Commit Graph

427 Commits

Author SHA1 Message Date
Simon Pantzare
9eaf8e4330 Test to verify that context is passed on
The paginator and its object serializer should share the same context.
2012-12-14 19:59:29 +00:00
Szymon Teżewski
5f08ec70e2 context to custom field in pagination 2012-12-13 12:07:56 +01:00
Tom Christie
497da7fc69 Clean up field initialization. Fixes #497 2012-12-12 20:45:06 +00:00
Tom Christie
4058223309 Fix broken nested fields 2012-12-11 21:07:25 +00:00
George Kappel
80f15c598a Added depth test 2012-12-11 09:14:52 -06:00
Marko Tibold
d0935d1fbb get_excluded_fieldnames() should respect Meta options' ability to be either a tuple or list. Fixes #490.
Refactored `if self.opt.fields` out of the for loop.
Updated and cleaned up the validation-tests.
2012-12-10 23:10:04 +01:00
Tom Christie
936fdfb78e More tests for nullable FKs 2012-12-08 12:48:27 +00:00
Tom Christie
f72be7b8fa Add test for m2m create 2012-12-08 12:29:35 +00:00
Tom Christie
c911d54ae3 Reverted #458
When incorrect parameters are supplied to the obtain auth token view
400 *is* the correct response.
2012-12-07 22:25:16 +00:00
Tom Christie
303bc7cf95 Support nullable FKs, with blank=True 2012-12-07 21:32:45 +00:00
Tom Christie
a5178e9a36 Merge pull request #451 from markotibold/#431
Call model's .full_clean() method, eg. to validate uniqueness
2012-12-07 12:34:56 -08:00
Tom Christie
6ffcd7ba36 Merge pull request #477 from roberts81/master
Fix for #460
2012-12-06 14:54:28 -08:00
Marko Tibold
c65f22e0e4 Merge branch 'master' of https://github.com/tomchristie/django-rest-framework into #431 2012-12-06 23:47:47 +01:00
Tom Christie
e2175eb71b Merge pull request #462 from asfaltboy/modelserializer_traverse_related
ModelSerializer traverse related
2012-12-06 14:35:57 -08:00
Ben Roberts
cb7d9ea5c9 cleaned up white space & docstring styling 2012-12-06 12:45:50 -07:00
Ben Roberts
7f28a78414 cleaned up last commit 2012-12-05 17:54:21 -07:00
Ben Roberts
705c7ad09d added tests and fix for unpickleable metadata in SortedDictWithMetadata 2012-12-05 17:43:47 -07:00
Tom Christie
56bb4a5b03 Merge pull request #448 from mhsparks/master
Add setter to user property on request object
2012-12-02 06:59:27 -08:00
Xavier Ordoquy
5fad46d7e2 Merge remote-tracking branch 'reference/master' into p3k 2012-12-02 12:43:32 +01:00
Pavel Savchenko
1c1bd3fc5d fix test response 2012-11-30 01:37:21 +02:00
Pavel Savchenko
e311b763e1 add traverse_related feature + tests (fixes issue#461) 2012-11-30 01:34:46 +02:00
Pavel Savchenko
1b9d0eefba fix forgotten 400 test 2012-11-29 09:35:22 +02:00
Pavel Savchenko
19f67bd578 also update test with response code 401 2012-11-28 23:05:33 +02:00
Marko Tibold
e7666014a8 Added an assertion to the tests that checks the '.errors' value for the unique-test 2012-11-26 23:39:49 +01:00
Xavier Ordoquy
17000129e3 Every (base) test should now pass with python3. 2012-11-24 23:19:03 +01:00
Mark Hughes
85a921c7ef Added setter to user property 2012-11-24 17:18:32 +00:00
Xavier Ordoquy
e348ee9255 52 tests passing. Refactored a few string / byte io. 2012-11-23 01:12:33 +01:00
Xavier Ordoquy
b68263fb65 Default encoding should probably be latin-1 as some RFC seems to imply it. 2012-11-23 01:11:09 +01:00
Marko Tibold
3f47f6cea9 Added a validate_unique test. 2012-11-22 23:50:42 +01:00
Marko Tibold
ca5b99486d Added _post_clean() behaviour by adding a .perform_model_validation() method.
Fixed some tests that were failing due to extra strict validation.
2012-11-22 22:36:37 +01:00
Xavier Ordoquy
606c20f012 6 first tests passes under python 3.2 2012-11-22 02:08:00 +01:00
Xavier Ordoquy
49f8e6419a Fixed python2.7 compat issue. 2012-11-22 00:43:56 +01:00
Xavier Ordoquy
e9c8af46f1 Fixed test with base64. 2012-11-22 00:32:00 +01:00
Xavier Ordoquy
b3698acb6c First passing test under p3k \o/ 2012-11-22 00:20:49 +01:00
Mark Aaron Shirley
0876bed963 Merge remote-tracking branch 'upstream/master' into partial-update 2012-11-21 09:37:22 -08:00
Stephan Groß
03100168ff added missing line 2012-11-21 11:57:00 +01:00
Stephan Groß
6ba4df8a27 Merge remote-tracking branch 'upstream/master' into regex_field
Conflicts:
	docs/topics/release-notes.md
2012-11-21 11:56:34 +01:00
Stephan Groß
ed713d0354 added tests 2012-11-21 11:07:08 +01:00
Tom Christie
8e8b23b6a9 Merge pull request #430 from j4mie/serializer-method-field
Serializer method field
2012-11-20 15:30:30 -08:00
Mark Aaron Shirley
c3644234cd Add support for partial serializer updates 2012-11-20 11:01:21 -08:00
Jamie Matthews
3cc5349b2f Clean up and clarify tests for related serializers 2012-11-20 09:49:54 +00:00
Jamie Matthews
68c397371c Fix related serializers with source argument that resolves to a callable 2012-11-20 09:41:36 +00:00
Tom Christie
b9e5c9484a Merge pull request #399 from robromano/master
Added login view for users of TokenAuthentication
2012-11-19 13:30:49 -08:00
Jamie Matthews
de5b071d67 Add SerializerMethodField 2012-11-19 17:22:17 +00:00
Robert Romano
f5f1ac49ec Update robromano fork with upstream master
Conflicts:
	docs/topics/credits.md
	docs/topics/release-notes.md
2012-11-18 21:07:44 -08:00
Jacob Magnusson
d67ee708e5 Add support for min_length / max_length keywords
on basic ModelFields
2012-11-18 18:14:21 +01:00
Tom Christie
e801e21210 Merge pull request #422 from markotibold/max_length_for_modelserializers
Max length for modelserializers
2012-11-16 14:54:16 -08:00
Tom Christie
e40000c834 Merge pull request #408 from markotibold/file_and_image_fields
Added a FileField and an ImageField
2012-11-16 14:48:42 -08:00
Tom Christie
31f01bd631 Polishing to page size query parameters & more docs 2012-11-16 22:45:57 +00:00
Tom Christie
9973cf329a Merge pull request #412 from minddust/custom_page_size_per_request
support for custom page size per request
2012-11-16 13:45:27 -08:00
Marko Tibold
1a436dd6d9 Added URLField and SlugField.
Fixed test_modelserializer_max_length_exceeded
2012-11-16 22:43:16 +01:00
Marko Tibold
4edc801d59 Reproduces #421 2012-11-16 21:42:04 +01:00
Marko Tibold
403886b79b Merge commit '3b258d69c92e9d9293f7c5d1690f0ca434e677e3' into file_and_image_fields 2012-11-15 22:48:22 +01:00
Stephan Groß
a701a21587 added page_size_kwarg tests 2012-11-15 14:35:34 +01:00
Marko Tibold
69a01d7125 Added a test for the FileField. 2012-11-14 23:04:46 +01:00
Rob Romano
321ba156ca Renamed AuthTokenView to ObtainAuthToken, added obtain_auth_token var, updated tests & docs. Left authtoken.urls in place as example. 2012-11-14 12:51:00 -08:00
Rob Romano
ce3ccb91dc Updates to login view for TokenAuthentication from feedback from Tom 2012-11-14 12:46:14 -08:00
Rob Romano
bd92db3c67 Added authtoken login/logout urlpatterns and views 2012-11-14 12:46:14 -08:00
Ludwig Kraatz
8b999c6bb5 polishing code
and adding myself to auhtors file
2012-11-14 11:46:16 +01:00
Ludwig Kraatz
b341dc70af fixed ugly code
Location header is set just, if there is a Location field on the
serializer.
2012-11-13 19:15:42 +01:00
Ludwig Kraatz
851dff1644 fixed a bug on testing throttling headers
after changing the headers storing of reponse
2012-11-13 18:39:07 +01:00
Ludwig Kraatz
cc55a7b643 Returning a Location Header on Create
when creating a Resource with HyperlinkedIdentityField of any name
2012-11-13 18:00:41 +01:00
Tom Christie
21468a1867 Fix broken depth argument 2012-11-13 11:47:32 +00:00
Marko Tibold
2a2ce406bc Fixes #380 2012-11-10 12:23:19 +01:00
Marko Tibold
df689a7442 Reproduces #380 2012-11-10 12:00:20 +01:00
Tom Christie
e224061189 Support for read_only_fields on ModelSerializer classes 2012-11-09 17:01:20 +00:00
Tom Christie
c7df9694b5 Merge pull request #383 from tomchristie/filtering
Support for filtering backends
2012-11-09 05:07:34 -08:00
Tom Christie
bc6f2a1703 Make default FILTER_BACKEND = None 2012-11-08 21:46:53 +00:00
Tomi Pajunen
743224d000 Fixed creation of objects with reversed M2M relations 2012-11-08 16:31:16 +02:00
Tom Christie
47b534a13e Make filtering optional, and pluggable. 2012-11-07 21:07:24 +00:00
Tom Christie
9fd061a0b6 Merge branch 'restframework2-filter' of git://github.com/onepercentclub/django-rest-framework into filtering 2012-11-07 20:13:27 +00:00
Tom Christie
b19c58ae17 Support for HTML error templates. Fixes #319. 2012-11-06 10:44:19 +00:00
Ben Konrath
09f39bd23b Merge branch 'master' into restframework2-filter 2012-11-06 03:22:25 +01:00
Tom Christie
455a8cedcf Tweaks 2012-11-05 17:03:22 +00:00
Tom Christie
9731b95fc3 Merge pull request #347 from minddust/master
support for passing custom slug options to HyperlinkedRelatedField
2012-11-05 08:36:59 -08:00
Stephan Groß
0a660a531a fixed typo 2012-11-05 16:43:03 +01:00
Stephan Groß
03095f607a added testcase for custom slug field in hyperlinkedrelatedfield 2012-11-05 16:37:37 +01:00
Tom Christie
33be4b43b9 queryset argument is now optional on writable model fields. 2012-11-05 12:51:04 +00:00
Tom Christie
b7b942c599 Swap position of instance and data keyword arguments. 2012-11-05 10:53:20 +00:00
Jacob Magnusson
7df7dadccd Remove `request' from response instance while
testing caching
2012-11-04 13:42:29 +01:00
Jacob Magnusson
44f280c3ab Add tests for caching of GET/HEAD requests using
Django's built in caching framework.
Currently fails as some attributes on the Response
object are not pickable
2012-11-04 12:47:46 +01:00
Jacob Magnusson
38af6107b5 Added test for ModelSerializer Meta fields
returning as expected
2012-11-03 00:32:08 +01:00
Jacob Magnusson
1b49615c00 Added test that makes sure that fields with
dictionaries as data are returned as expected and
not turned into string representations
2012-11-03 00:32:02 +01:00
Jacob Magnusson
19a218f859 Bye bye star import 2012-11-03 00:27:56 +01:00
Tom Christie
8ec54e6a9f Tweaks 2012-11-02 20:56:51 +00:00
Tom Christie
6eaec7a0ec foreign key tests 2012-11-02 20:53:33 +00:00
Tom Christie
e84ce60a0d Initial PK relationship tests 2012-11-02 19:11:40 +00:00
Ben Konrath
9c82f9717e Merge branch 'master' into restframework2-filter 2012-11-01 14:06:56 +01:00
Tom Christie
027c9079f6 PUT as create should return 201. Fixes #340. 2012-10-31 20:11:38 +00:00
Tom Christie
0047a46020 Merge fixes for 'blank=True' fields. Fixes #324, Fixes #325
Thanks to @Roarster.
2012-10-30 11:03:03 +00:00
Tom Christie
5670cb03bf Allow use of absolute URLs when deserializing hyperlinked fields 2012-10-30 10:49:01 +00:00
Tom Christie
1b6fe9abb4 Hyperlinked serializer tests 2012-10-30 10:35:30 +00:00
Marko Tibold
6ccbdd10ad Adding failing tests that show null=True model fields are won't validate if their value is omitted. 2012-10-30 00:03:24 +01:00
Tom Christie
b6c90c0d68 Fix slug based put as create test 2012-10-29 17:20:06 +00:00
Tom Christie
343da8e3cf PUT as create should return 200 2012-10-29 16:13:08 +00:00
Tom Christie
6b6f0e682b Merge pull request #331 from markotibold/test_put_as_create
Test put as create
2012-10-29 09:11:32 -07:00
Tom Christie
6e4ab09aae readonly -> read_only 2012-10-28 20:21:45 +00:00
Marko Tibold
1a16289ede Get the correct instance 2012-10-28 20:56:48 +01:00
Marko Tibold
5bb6680376 test_put_as_create_on_id_based_url should check for a created-response. 2012-10-28 20:45:42 +01:00
Tom Christie
3d3df22d82 Merge pull request #330 from tomchristie/tutorial-refactor
Tutorial refactor
2012-10-28 12:42:10 -07:00
Marko Tibold
bc99142c7d Added wo tests. One for PUTing on a non-existing id-based url. And another for PUTing on a non-existing slug-based url.
Fix doctoring for 'test_put_cannot_set_id'.
2012-10-28 19:35:50 +01:00
Tom Christie
12c363c1fe TemplateHTMLRenderer, StaticHTMLRenderer 2012-10-28 18:12:56 +00:00
Tom Christie
b9e576f16e Push tests into a seperate app namespace 'rest_framework.test'
Prevents tests from running by default when rest_framework is installed
as 3rd party app.
Fixes #316, #185
2012-10-27 18:44:23 +01:00
Tom Christie
67f1265e49 Fix failing 'default' on ModelSerializer 2012-10-26 13:20:30 +01:00
Jamie Matthews
ac2d39892d Add cross-field validate method 2012-10-24 11:39:17 +01:00
Jamie Matthews
388a807f64 Switch from clean_<fieldname> to validate_<fieldname>, clarify documentation 2012-10-24 11:27:01 +01:00
Jamie Matthews
51fae73f3d Implement per-field validation on Serializers 2012-10-24 09:28:10 +01:00
Ian Strachan
c7a0d52fd7 #314 Fix for manytomany field being required in the payload even though the field is specified as readonly in the serializer 2012-10-22 22:24:26 +01:00
Jamie Matthews
45d4622f09 Fix serialization of reverse relationships 2012-10-22 15:12:25 +01:00
Ian Strachan
d70e387f10 Added tests for dotted notation in serializer field source 2012-10-18 23:45:16 +01:00
Tom Christie
e126b61542 Negotiation API finalized. .select_renderers and .select_parsers 2012-10-17 22:58:18 +01:00
Tom Christie
fb56f215ae Added media_type to .parse() - Consistency with renderer API. 2012-10-17 22:39:07 +01:00
Tom Christie
99d48f9003 Drop .parse_string_or_stream() - keep API minimal. 2012-10-17 22:07:56 +01:00
Rob Dobson
38673c35d4 Make default field check safe for boolean values whereby 'False' may be an acceptable default value 2012-10-17 19:12:34 +01:00
Tom Christie
4fe734a91a Merge pull request #296 from ulmus/restframework2
Removed serializers.TextField and related tests
2012-10-15 06:04:55 -07:00
Tom Christie
9c1fba3483 Tweak parsers to take parser_context 2012-10-15 13:27:50 +01:00
Jens Alm
9f3ff0105a Removed serializer.TextField and related tests 2012-10-15 14:09:29 +02:00
Jens Alm
36cc56bc9d Added tests for TextField 2012-10-15 10:06:50 +02:00
Tom Christie
551c86c43a Documentation for parsers 2012-10-14 22:43:07 +01:00
Ben Konrath
1d054f9572 Use Decimal (properly) everywhere. 2012-10-11 14:19:29 +02:00
Ben Konrath
6f736a6823 Explicitly use Decimal for creating filter test data.
This fixes a Travis build failures on python 2.6:

https://travis-ci.org/#!/tomchristie/django-rest-framework/builds/2746628
2012-10-11 13:55:16 +02:00
Tom Christie
6300334aca Sanitise JSON error messages 2012-10-11 13:53:12 +02:00
Tom Christie
9094f93d18 Sanitise JSON error messages 2012-10-11 11:21:50 +01:00
Ben Konrath
e295f616ec Fix small PEP8 problem. 2012-10-11 12:01:07 +02:00
Ben Konrath
692203f933 Check for 200 status when unknown filter requested.
This changes the test from the failing checking for status 400. See
discussion here:

https://github.com/tomchristie/django-rest-framework/pull/169#issuecomment-9240480
2012-10-11 12:01:07 +02:00
Ben Konrath
1e9ece0f93 First attempt at adding filter support.
The filter support uses django-filter to work its magic.
2012-10-11 12:01:07 +02:00
Tom Christie
648d2be29b Make sure JSON output in Browseable API is nicely indented 2012-10-10 12:15:18 +01:00
Tom Christie
ccd2b0117d Permissions and throttles no longer have a view attribute on self. Explicitly passed to .has_permissions(request, view, obj=None) / .allow_request(request, view) 2012-10-10 10:02:37 +01:00
Tom Christie
97a7f27c82 Rename HTMLTemplateRenderer -> HTMLRenderer, DocuemntingHTMLRenderer -> BrowseableAPIRenderer 2012-10-09 15:58:48 +01:00
Tom Christie
dc52ceaaa2 Remove Field handling relations/relationship managers - use RelatedField/ManyRelatedField instead 2012-10-09 10:25:01 +01:00
Tom Christie
5c17a60176 Tweak authtoken 2012-10-09 09:57:31 +01:00
Tom Christie
65f592866c Fix issue where required fields were not being properly validated. Also make model fields with a default value be not required 2012-10-08 17:53:18 +01:00
Tom Christie
4a21b3557e Fix fiddly content-overloading bug 2012-10-08 17:10:50 +01:00
Tom Christie
52ba2e3333 Fix #285 2012-10-08 12:52:56 +01:00
Tom Christie
33ac2fd959 Remove unused test file 2012-10-05 17:07:25 +01:00
Tom Christie
2533c2452b Support PUT for create 2012-10-05 16:24:52 +01:00
Tom Christie
7218bcbade Add test for non-GET methods to api_view decorator 2012-10-05 15:55:45 +01:00
Tom Christie
9d8bce8f5b Remove Parser.can_handle_request() 2012-10-05 14:48:33 +01:00
Tom Christie
2575ea92aa Docs for template responses 2012-10-05 13:04:34 +01:00
Tom Christie
26c7d6df6c HTMLTemplateRenderer working 2012-10-05 12:13:44 +01:00
Tom Christie
ed281be3fb User .accepted_renderer, .accepted_media_type 2012-10-05 10:33:44 +01:00
Tom Christie
d07dc77e91 Accepted media type uses most specific of client/renderer media types. 2012-10-05 10:23:47 +01:00
Tom Christie
693892ed01 Fix for field to make it easier to access field relationships 2012-10-04 22:07:24 +01:00
Tom Christie
c91d926b06 Initial tests for hyperlinked relationships 2012-10-04 16:58:18 +01:00
Tom Christie
eaebb397fa Make Import patterns 1.3 compatible 2012-10-04 13:58:28 +01:00
Tom Christie
d89d6887d2 HyperlinkedModelSerializer with working HyperlinkedIdentityField, but no hyperlinked relations 2012-10-04 11:26:41 +01:00
Tom Christie
d79e18963e Tests for default arguments on fields 2012-10-04 09:29:12 +01:00
Tom Christie
f8edfa2675 Abstract out the app_label on test models 2012-10-04 09:19:10 +01:00
Tom Christie
bcd2caf559 Abstract out the app_label on test models 2012-10-04 09:18:46 +01:00
Tom Christie
58c1263267 Use either PrimaryKeyRelatedField or ManyPrimaryKeyRelatedField as appropriate (fixes test) 2012-10-03 12:16:30 +01:00
Tom Christie
f1f7f5d4e3 Added failing test for m2m data 2012-10-03 11:50:08 +01:00
Tom Christie
89ec0b2750 Add m2m update test 2012-10-03 11:14:47 +01:00
Tom Christie
7c303411a9 Add Serializer.save() to clean up differences between serializer.object being either a DeserializedObject or a model instance 2012-10-03 11:08:02 +01:00
Tom Christie
36b58d0c78 Many2Many test 2012-10-03 10:51:38 +01:00
Tom Christie
c30e0795be Rename generic views 2012-10-03 09:26:15 +01:00
Tom Christie
d1b99f350a Added model form field -> serializer form field mapping 2012-10-02 16:16:49 +01:00
Tom Christie
f010a9553e Add test to ensure that pk is readonly in PUT requests 2012-10-02 15:39:41 +01:00
Tom Christie
ab173fd8f9 Fix bug where pk could be set in post data 2012-10-02 15:37:13 +01:00
Tom Christie
e7685f3eb5 URL overrides in settings fixed up slightly 2012-10-02 15:24:42 +01:00
Tom Christie
b16fb57771 Expand pagination support, add docs 2012-10-01 15:49:19 +01:00
Tom Christie
6fa589fefd Pagination support 2012-09-30 17:31:28 +01:00
Tom Christie
616e6f5f4d Drop oauth tests for now - may pull same test module back in if end up using django-oauth-plus, but since we've not pulled it in right now... 2012-09-28 17:09:30 +01:00
Tom Christie
224bc027cd Add more tests for generic views 2012-09-28 16:41:35 +01:00
Tom Christie
0853316545 Add more tests for generic views 2012-09-28 16:23:46 +01:00
Tom Christie
6cf2874cf2 Clean up reverse tests 2012-09-28 16:09:52 +01:00
Tom Christie
9f71f8e618 Fix broken bits of generic views 2012-09-28 15:54:00 +01:00
Tom Christie
25cbff5fab Remove unused test file 2012-09-28 14:29:20 +01:00
Tom Christie
e003cc91b6 Get test-only models properly working 2012-09-28 14:28:50 +01:00
Tom Christie
84f7758039 Remove support for doctests 2012-09-28 11:53:51 +01:00
Tom Christie
ee36e4ab0c Only display forms when user has permissions. #159 2012-09-27 21:51:46 +01:00
Tom Christie
91b3fb0b05 Remove RequestFactory from compat (Now 1.2 is not supported) 2012-09-27 13:06:04 +01:00
Tom Christie
fe666a14ee Add test for request.POST 2012-09-27 12:50:18 +01:00
Tom Christie
3bae2867e9 Remove braindead test 2012-09-27 12:49:33 +01:00
Tom Christie
0cc7030aab Fix @api_view decorator tests 2012-09-26 21:47:19 +01:00
Jamie Matthews
c13c8fe5bc Update to new rest_framework package name, simplify implementation 2012-09-26 13:52:29 +01:00
Tom Christie
d9cba6398e Clean up bits of templates etc 2012-09-20 17:44:34 +01:00
Tom Christie
4b691c4027 Change package name: djangorestframework -> rest_framework 2012-09-20 13:06:27 +01:00