Package init
This commit is contained in:
commit
b4a4d32b55
BIN
0.3.6.tar.gz
Normal file
BIN
0.3.6.tar.gz
Normal file
Binary file not shown.
62
0001-Fix-arguments-with-type-list-705.patch
Normal file
62
0001-Fix-arguments-with-type-list-705.patch
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
From f71b4f61d96c43748ca1cb9002f874a8d8276312 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Stephen Pascoe <stephen.pascoe@lirico.co.uk>
|
||||||
|
Date: Wed, 4 Oct 2017 01:01:47 +0100
|
||||||
|
Subject: [PATCH] Fix arguments with type=list (#705)
|
||||||
|
|
||||||
|
Closes #681
|
||||||
|
---
|
||||||
|
flask_restful/reqparse.py | 2 +-
|
||||||
|
tests/test_reqparse.py | 25 +++++++++++++++++++++++++
|
||||||
|
2 files changed, 26 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/flask_restful/reqparse.py b/flask_restful/reqparse.py
|
||||||
|
index 8fe142e..527bc94 100644
|
||||||
|
--- flask_restful/reqparse.py
|
||||||
|
+++ flask_restful/reqparse.py
|
||||||
|
@@ -176,7 +176,7 @@ class Argument(object):
|
||||||
|
values = source.getlist(name)
|
||||||
|
else:
|
||||||
|
values = source.get(name)
|
||||||
|
- if not isinstance(values, collections.MutableSequence):
|
||||||
|
+ if not (isinstance(values, collections.MutableSequence) and self.action == 'append'):
|
||||||
|
values = [values]
|
||||||
|
|
||||||
|
for value in values:
|
||||||
|
diff --git a/tests/test_reqparse.py b/tests/test_reqparse.py
|
||||||
|
index ce9ce30..df18ead 100644
|
||||||
|
--- tests/test_reqparse.py
|
||||||
|
+++ tests/test_reqparse.py
|
||||||
|
@@ -891,5 +891,30 @@ class ReqParseTestCase(unittest.TestCase):
|
||||||
|
self.assertEquals(args['int1'], 1)
|
||||||
|
self.assertEquals(args['int2'], 2)
|
||||||
|
|
||||||
|
+ def test_list_argument(self):
|
||||||
|
+ app = Flask(__name__)
|
||||||
|
+
|
||||||
|
+ parser = RequestParser()
|
||||||
|
+ parser.add_argument('arg1', location='json', type=list)
|
||||||
|
+
|
||||||
|
+ with app.test_request_context('/bubble', method="post",
|
||||||
|
+ data=json.dumps({'arg1': ['foo', 'bar']}),
|
||||||
|
+ content_type='application/json'):
|
||||||
|
+ args = parser.parse_args()
|
||||||
|
+ self.assertEquals(args['arg1'], ['foo', 'bar'])
|
||||||
|
+
|
||||||
|
+ def test_list_argument_dict(self):
|
||||||
|
+ app = Flask(__name__)
|
||||||
|
+
|
||||||
|
+ parser = RequestParser()
|
||||||
|
+ parser.add_argument('arg1', location='json', type=list)
|
||||||
|
+
|
||||||
|
+ with app.test_request_context('/bubble', method="post",
|
||||||
|
+ data=json.dumps({'arg1': [{'foo': 1, 'bar': 2}]}),
|
||||||
|
+ content_type='application/json'):
|
||||||
|
+ args = parser.parse_args()
|
||||||
|
+ self.assertEquals(args['arg1'], [{'foo': 1, 'bar': 2}])
|
||||||
|
+
|
||||||
|
+
|
||||||
|
if __name__ == '__main__':
|
||||||
|
unittest.main()
|
||||||
|
--
|
||||||
|
2.17.0.rc1
|
||||||
|
|
||||||
25
0002-Support-aniso8601-3.0-in-tests.patch
Normal file
25
0002-Support-aniso8601-3.0-in-tests.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
From 54979f0a49b2217babc53c5b65b5df10b6de8e05 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Josh Friend <josh@fueledbycaffeine.com>
|
||||||
|
Date: Thu, 29 Mar 2018 14:55:35 -0400
|
||||||
|
Subject: [PATCH] Support aniso8601 >3.0 in tests
|
||||||
|
|
||||||
|
---
|
||||||
|
tests/test_inputs.py | 2 +-
|
||||||
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/tests/test_inputs.py b/tests/test_inputs.py
|
||||||
|
index 90a2fb0..6cb9e9b 100644
|
||||||
|
--- tests/test_inputs.py
|
||||||
|
+++ tests/test_inputs.py
|
||||||
|
@@ -417,7 +417,7 @@ def test_bad_isointervals():
|
||||||
|
for bad_interval in bad_intervals:
|
||||||
|
yield (
|
||||||
|
assert_raises,
|
||||||
|
- ValueError,
|
||||||
|
+ Exception,
|
||||||
|
inputs.iso8601interval,
|
||||||
|
bad_interval,
|
||||||
|
)
|
||||||
|
--
|
||||||
|
2.17.0
|
||||||
|
|
||||||
27
0003-Fix-tests_api-list-traceback.patch
Normal file
27
0003-Fix-tests_api-list-traceback.patch
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
commit dfd60ce7c656d95afc2e7c4c1e03be2982cc9a9d
|
||||||
|
Author: Kamil Páral <kparal@redhat.com>
|
||||||
|
Date: Tue Jun 26 12:06:37 2018 +0200
|
||||||
|
|
||||||
|
test_api: fix traceback
|
||||||
|
|
||||||
|
This is fixed:
|
||||||
|
```
|
||||||
|
Traceback (most recent call last):
|
||||||
|
File "/builddir/build/BUILD/flask-restful-0.3.6/tests/test_api.py", line 787, in test_fr_405
|
||||||
|
set(['HEAD', 'OPTIONS'] + HelloWorld.methods))
|
||||||
|
TypeError: can only concatenate list (not "set") to list
|
||||||
|
```
|
||||||
|
|
||||||
|
diff --git a/tests/test_api.py b/tests/test_api.py
|
||||||
|
index 26447ae..f34b3f6 100644
|
||||||
|
--- a/tests/test_api.py
|
||||||
|
+++ b/tests/test_api.py
|
||||||
|
@@ -784,7 +784,7 @@ class APITestCase(unittest.TestCase):
|
||||||
|
allow = ', '.join(set(resp.headers.get_all('Allow')))
|
||||||
|
allow = set(method.strip() for method in allow.split(','))
|
||||||
|
self.assertEquals(allow,
|
||||||
|
- set(['HEAD', 'OPTIONS'] + HelloWorld.methods))
|
||||||
|
+ set(['HEAD', 'OPTIONS'] + list(HelloWorld.methods)))
|
||||||
|
|
||||||
|
def test_exception_header_forwarded(self):
|
||||||
|
"""Test that HTTPException's headers are extended properly"""
|
||||||
29
python-flask-restful.remove_q0_testcase.patch
Normal file
29
python-flask-restful.remove_q0_testcase.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
--- tests/test_accept.py.orig 2015-11-13 12:06:18.914003153 +0100
|
||||||
|
+++ tests/test_accept.py 2015-11-13 12:04:42.786435117 +0100
|
||||||
|
@@ -121,26 +121,6 @@
|
||||||
|
assert_equals(res.content_type, 'text/plain')
|
||||||
|
|
||||||
|
|
||||||
|
- def test_accept_no_default_match_q0_not_acceptable(self):
|
||||||
|
- """
|
||||||
|
- q=0 should be considered NotAcceptable,
|
||||||
|
- but this depends on werkzeug >= 1.0 which is not yet released
|
||||||
|
- so this test is expected to fail until we depend on werkzeug >= 1.0
|
||||||
|
- """
|
||||||
|
- class Foo(flask_restful.Resource):
|
||||||
|
- def get(self):
|
||||||
|
- return "data"
|
||||||
|
-
|
||||||
|
- app = Flask(__name__)
|
||||||
|
- api = flask_restful.Api(app, default_mediatype=None)
|
||||||
|
-
|
||||||
|
- api.add_resource(Foo, '/')
|
||||||
|
-
|
||||||
|
- with app.test_client() as client:
|
||||||
|
- res = client.get('/', headers=[('Accept', 'application/json; q=0')])
|
||||||
|
- assert_equals(res.status_code, 406)
|
||||||
|
- assert_equals(res.content_type, 'application/json')
|
||||||
|
-
|
||||||
|
def test_accept_no_default_accept_highest_quality_of_two(self):
|
||||||
|
class Foo(flask_restful.Resource):
|
||||||
|
def get(self):
|
||||||
60
python-flask-restful.spec
Normal file
60
python-flask-restful.spec
Normal file
@ -0,0 +1,60 @@
|
|||||||
|
Name: python-flask-restful
|
||||||
|
Version: 0.3.6
|
||||||
|
Release: 9
|
||||||
|
Summary: Framework for creating REST APIs
|
||||||
|
License: BSD
|
||||||
|
URL: https://www.github.com/flask-restful/flask-restful/
|
||||||
|
Source0: https://github.com/flask-restful/flask-restful/archive/%{version}.tar.gz
|
||||||
|
Patch0: python-flask-restful.remove_q0_testcase.patch
|
||||||
|
Patch1: 0001-Fix-arguments-with-type-list-705.patch
|
||||||
|
Patch2: 0002-Support-aniso8601-3.0-in-tests.patch
|
||||||
|
Patch3: 0003-Fix-tests_api-list-traceback.patch
|
||||||
|
|
||||||
|
BuildArch: noarch
|
||||||
|
BuildRequires: git gcc pytz python3-setuptools python3-nose python3-mock python3-blinker
|
||||||
|
BuildRequires: python3-flask python3-six python3-aniso8601 python3-pytz python3-devel python3-crypto
|
||||||
|
|
||||||
|
|
||||||
|
%description
|
||||||
|
Flask-RESTful provides the building blocks for creating a REST API.
|
||||||
|
|
||||||
|
%package -n python3-flask-restful
|
||||||
|
Summary: Framework for creating REST APIs
|
||||||
|
Requires: python3-flask
|
||||||
|
Requires: python3-six
|
||||||
|
Requires: python3-aniso8601
|
||||||
|
Requires: python3-pytz
|
||||||
|
%{?python_provide:%python_provide python3-flask-restful}
|
||||||
|
|
||||||
|
%description -n python3-flask-restful
|
||||||
|
Flask-RESTful is Python 3 extension for Flask that adds support
|
||||||
|
for quickly building REST APIs.
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%setup -qn flask-restful-%{version}
|
||||||
|
rm -rf docs/_themes/.gitignore
|
||||||
|
%patch0
|
||||||
|
%patch1
|
||||||
|
%patch2
|
||||||
|
%patch3 -p1
|
||||||
|
|
||||||
|
%build
|
||||||
|
%py3_build
|
||||||
|
|
||||||
|
%install
|
||||||
|
%py3_install
|
||||||
|
|
||||||
|
|
||||||
|
%check
|
||||||
|
%{__python3} setup.py test
|
||||||
|
|
||||||
|
|
||||||
|
%files -n python3-flask-restful
|
||||||
|
%doc AUTHORS.md README.md examples/ docs/
|
||||||
|
%license LICENSE
|
||||||
|
%{python3_sitelib}/*
|
||||||
|
|
||||||
|
|
||||||
|
%changelog
|
||||||
|
* Fri Nov 8 2019 Buildteam <buildteam@openeuler.org> - 0.3.6-9
|
||||||
|
- Package Initialization
|
||||||
Loading…
x
Reference in New Issue
Block a user