Tom Christie
99794773cf
Merge pull request #962 from tomchristie/test-client
...
APIClient and APIRequestFactory
2013-07-04 05:50:04 -07:00
Tom Christie
5fa100245c
Update parser docstrings. Closes #968 .
2013-07-04 12:47:35 +01:00
Andy Freeland
7d43f41e4a
Remove 'Hold down "Control" ...' message from help_text
...
When getting the help_text from a field where `many=True`, Django
appends 'Hold down "Control", or "Command" on a Mac, to select more than
one.' to the help_text. This makes some sense in Django's ModelForms,
but no sense in the API.
2013-07-04 01:51:24 -04:00
Tom Christie
0a722de171
Complete testing docs
2013-07-01 13:59:05 +01:00
Tom Christie
c9485c783a
Rename to force_authenticate
2013-06-29 22:53:15 +01:00
Tom Christie
ab799ccc3e
Simplify APIClient implementation
2013-06-29 21:34:47 +01:00
Tom Christie
664f8c6365
Added APIClient.authenticate()
2013-06-29 21:02:58 +01:00
Tom Christie
35022ca921
Refactor SessionAuthentication slightly
2013-06-29 08:14:05 +01:00
Tom Christie
f7db06953b
Remove unneeded tests.utils, superseeded by APIRequestFactory, APIClient
2013-06-29 08:06:11 +01:00
Tom Christie
90bc07f3f1
Addeded 'APITestClient.credentials()'
2013-06-29 08:05:08 +01:00
Tom Christie
f585480ee1
Added APIClient
2013-06-28 17:50:30 +01:00
Tom Christie
7224b20d58
Added APIRequestFactory
2013-06-28 17:17:39 +01:00
Tom Christie
05d8a90e94
Merge branch 'master' into writable-nested-modelserializer
2013-06-28 09:36:17 +01:00
Tom Christie
4ee9cdc7af
Fix compat datetime import when oauth2 provide does not support timezone aware datetimes
2013-06-28 09:35:52 +01:00
Tom Christie
58d38d694e
Merge branch 'master' into writable-nested-modelserializer
2013-06-28 09:07:09 +01:00
Tom Christie
7ba2f44a0f
Version 2.3.6
2013-06-27 13:00:05 +01:00
Tom Christie
e0dddbc5de
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework
2013-06-27 12:32:46 +01:00
Tom Christie
96f41fd12d
Use imported views to expose python 2.6 bug. Refs #943
2013-06-27 11:58:34 +01:00
Tom Christie
7e67ad666b
Merge pull request #953 from j4mie/prevent-duplicate-routing
...
Prevent dynamically routing to a method that is already routed to.
2013-06-26 15:37:42 -07:00
Jamie Matthews
c127e63c32
Raise exception when attempting to dynamically route to a method that is already routed to. Fixes #940
2013-06-26 23:00:42 +01:00
Tom Christie
91b9fcb0ba
Minor test cleanup
2013-06-26 22:43:17 +01:00
Tom Christie
35e4d1cf9c
Merge pull request #943 from trwired/utf8safedocs
...
Make browsable API views play nice with utf-8
2013-06-26 14:41:07 -07:00
Tom Christie
69e5e3cc0d
Use timezone aware datetimes with oauth2 provider, when supported. Closes #947 .
2013-06-26 21:18:13 +01:00
Igor Kalat
c8b0e6c40f
Refactored get_view_description, moved appropriate tests to test_description.py
2013-06-26 22:12:02 +02:00
Tom Christie
715bd47dfa
Use AUTH_USER_MODEL consistently between various Django versions. Closes #946
2013-06-26 17:56:42 +01:00
Igor Kalat
2bf5f63050
Make browsable API views play nice with utf-8
2013-06-22 19:21:28 +02:00
Tom Christie
8cc63b09f6
Add support for StreamingHttpResponse. Closes #939
2013-06-21 22:42:04 +01:00
Tom Christie
8b0d4115c6
Merge pull request #941 from FreakyDug/master
...
Fixed a couple of small problems I found when using the action decorator.
2013-06-21 14:23:40 -07:00
Tom Christie
209b65f426
Update assertion error to reference 'base_name' argument, not incorrect 'name' argument. Closes #933
2013-06-21 22:13:25 +01:00
Tom Christie
3d4bb4b553
Ensure action kwargs properly handdled. Refs #940 .
2013-06-21 22:03:07 +01:00
Philip Douglas
fa9f5fb8dc
Allow uppercase methods in action decorator.
...
Previously, using uppercase for the method argument would silently fail
to route those methods.
2013-06-21 16:28:17 +01:00
Tom Christie
6d2ca75d8e
Don't raise AttributeError on views with no model or queryset, when using DjangoModelPermissions
2013-06-18 11:10:56 +01:00
Tom Christie
4ad1094968
HyperlinkedModelSerializer supports overriding of 'url' field. Closes #936
2013-06-17 15:09:36 +01:00
Tom Christie
52298480c2
Clean up
2013-06-14 15:39:56 +01:00
Tom Christie
df957c8625
Fix and tests for ScopedRateThrottle. Closes #935
2013-06-14 14:18:40 +01:00
Tom Christie
614d8fec3c
Merge pull request #929 from mhsparks/positive-integer-field
...
Added test for custom fields with min_value and max_value validators
2013-06-12 12:39:57 -07:00
Tom Christie
c4ab77b9e9
Merge pull request #926 from davesque/master
...
I was having problems with a custom field that used a min_value validator...
2013-06-12 12:38:35 -07:00
inglesp
b1847412b5
Typo
2013-06-12 20:00:33 +02:00
Mark Hughes
82c515c19c
Added test for custom fields with min_value and max_value validators
2013-06-12 17:36:16 +01:00
David Sanders
fcaca73709
Pep8 lint
2013-06-11 16:10:25 -06:00
David Sanders
656897c2da
Update ModelField to work with a broader range of fields
...
Add support for fields that use min and max value validators.
2013-06-11 16:09:32 -06:00
Ethan Fremen
d89aade343
Allow the default router to have a custom name.
...
Signed-off-by: Ethan Fremen <ethan@matterport.com>
2013-06-07 19:49:18 -07:00
Ethan Fremen
ae2887ffc4
Set the args and kwargs before initializing the request.
...
Allows get_parser_context to function correctly.
Signed-off-by: Ethan Fremen <ethan@matterport.com>
2013-06-07 19:25:39 -07:00
Tom Christie
db8d61196a
Merge pull request #915 from aburgel/fix-oauth-bad-consumer-key
...
Fix serialization exception caused by non-existent consumer
2013-06-06 00:58:54 -07:00
Tom Christie
40e09472d8
Never deepcopy validators. Closes #913
2013-06-06 08:56:39 +01:00
Alex Burgel
ecb8a460c9
Fix serialization exception when using non-existent consumer
2013-06-05 17:02:44 -04:00
Tom Christie
f8a0d31d71
Remove ConfigurationError in favor of Django's ImproperlyConfigured
2013-06-05 13:45:28 +01:00
Tom Christie
de00ec95c3
Merge master
2013-06-05 13:33:19 +01:00
Tom Christie
2ca243a114
Fix up tests and tox
2013-06-05 13:20:06 +01:00
Tom Christie
f1251e8c58
Added trailing_slash argument to routers. Closes #905
2013-06-04 20:59:12 +01:00
Tom Christie
c160e49321
Test cases and fix for plain-list relationships (ie not queryset) Closes #878 .
2013-06-04 14:05:35 +01:00
Tom Christie
478f6ff94a
Regression test for #840 . Closes #840 .
2013-06-03 21:21:47 +01:00
Tom Christie
87b8cb8524
Merge pull request #904 from menghan/fix-doc-typo
...
fix doc typo
2013-06-03 08:04:32 -07:00
Tom Christie
28c2c46a03
Version 2.3.5
2013-06-03 12:34:18 +01:00
Tom Christie
6e0567c271
request.user should be still be accessible in renderer context if authentication fails
2013-06-03 12:32:57 +01:00
Tom Christie
62e59f8277
Merge pull request #900 from copitux/fix-validation-layer
...
Bugfix: Fix run validation layer with invalid data
2013-06-03 00:49:02 -07:00
Tom Christie
1bb5fb8e4a
Merge pull request #895 from linovia/django1.6a1
...
Added Django 1.6a1 to the test matrix.
2013-06-02 13:11:49 -07:00
Tom Christie
a3796f430b
Only use test import munging prior to Django 1.6's new test runner
2013-06-02 21:04:47 +01:00
Tom Christie
27d8b848bc
Add notes on 'method' argument to '@action' decorator
2013-06-02 20:40:56 +01:00
Tom Christie
b15a6ccef2
Serializer field 'default' argument may be a callable
2013-06-02 20:12:49 +01:00
Tom Christie
01e80ff9f7
Merge branch 'master' of https://github.com/woakas/django-rest-framework
2013-06-02 20:05:37 +01:00
Tom Christie
372ad01b74
Test cleanup
2013-06-02 19:56:15 +01:00
Tom Christie
8b73dce51d
view_name argument to HyperlinkedModelSerializer is now properly enforced. Closes #471
2013-06-02 19:50:24 +01:00
Menghan
b8aec1277c
fix doc typo
2013-06-02 12:12:14 +08:00
Tom Christie
d7753123f6
HyperlinkedModelSerializer lookup_field option should apply to HyperlinkedIdentityField
2013-05-31 11:50:37 +01:00
Tom Christie
c36ff4e052
Cleaning up imports and whitespace
2013-05-31 11:17:33 +01:00
Tom Christie
fdf9a26740
Remove unused test helper module
2013-05-31 11:14:37 +01:00
David Medina
c176af35e5
Improve avoid validation test: #900
2013-05-30 09:07:30 +02:00
Gustavo Andrés Angulo
de1cc5f8c1
Fix default field when is a simple callable function.
2013-05-29 11:45:54 -05:00
Tom Christie
c98ac3e83e
Added get_url hook to HyperlinkedIdentityField in line with HyperlinedRelatedField. Closes #883
2013-05-29 14:09:31 +01:00
David Medina
d11b55648c
Bugfix: Fix run validation layer with invalid data
2013-05-29 12:55:42 +02:00
Xavier Ordoquy
732269160f
Use absolute name imports for tests if django version is 1.6+.
2013-05-29 10:18:38 +02:00
Tom Christie
85fe7197bf
Change test urls to match 1.6 test module name style
2013-05-29 09:00:30 +01:00
Tom Christie
cb49c5d3c0
Rename test modules to 1.6 style
2013-05-29 08:57:11 +01:00
Stephan Groß
f6d7f54fc1
Merge pull request #897 from pborreli/typos
...
Fixed typos
2013-05-28 07:39:56 -07:00
Pascal Borreli
8f35ac4f93
Fixed typos
2013-05-28 15:09:23 +01:00
Tom Christie
22e1950e1c
Backwards compatible approach to HyperlinkedIdentityField URLs. Closes #892
2013-05-28 12:08:36 +01:00
Tom Christie
138f0cacdb
Raise 404 on incorrect lookup type in URL, not 500. Closes #890 .
2013-05-28 11:57:11 +01:00
Tom Christie
2a38aa7291
Version 2.3.4
2013-05-24 23:55:59 +01:00
Tom Christie
fcaee6e580
Clean up OPTIONS implementation
2013-05-24 23:44:23 +01:00
Alex Burgel
112b52f57e
Allow action decorator to handle multiple http methods
2013-05-24 18:28:47 -04:00
Tom Christie
760e8642bd
Merge branch 'issue-192-expose-fields-for-options' of https://github.com/grimborg/django-rest-framework into improved-options-support
2013-05-24 21:21:56 +01:00
Oscar Vilaplana
a1deb5eac7
simplified, moved field humanizing to Field. broken tests
2013-05-23 08:26:55 +02:00
Tom Christie
7a93fdbe0a
Last bits of charset sorting-out-ness
2013-05-22 16:46:15 +01:00
Tom Christie
17699056af
Use assertEqual, not assertEquals
2013-05-22 16:45:56 +01:00
Tom Christie
0c2b534d95
Minor cleanup
2013-05-22 09:29:43 +01:00
Tom Christie
06b28f66ed
Tweak method ordering for better consistency
2013-05-22 09:07:12 +01:00
Tom Christie
cdc3c37465
Merge and styling fixes
2013-05-21 12:01:56 +01:00
Tom Christie
aef7ac72cc
content type may be set explicitly on the response
2013-05-20 21:18:17 +01:00
Tom Christie
f19e0d544f
Fix charset issues
2013-05-20 21:00:56 +01:00
David Jones
c3fd7c6685
Updated SlugField to raise validation errors for invalid slugs
2013-05-20 13:04:38 +01:00
Oscar Vilaplana
dea0b6ab7f
removed TODO
2013-05-19 15:48:16 +02:00
Oscar Vilaplana
259153b3f9
removed TODO
2013-05-19 15:47:50 +02:00
Oscar Vilaplana
9133ef77ab
removed TODO
2013-05-19 15:47:23 +02:00
Oscar Vilaplana
7a5cd090aa
fixed tests, added docs, renamed helper method
2013-05-19 15:45:33 +02:00
Oscar Vilaplana
6bbedfd7ae
fixed merge conflict
2013-05-19 15:18:40 +02:00
Nikolaus Schlemm
31893cff74
* make test assertion more explicit
...
* cleanup
2013-05-19 15:12:01 +02:00
Oscar Vilaplana
e80488b619
Added min_length and max_length
2013-05-19 15:08:41 +02:00
Oscar Vilaplana
edbf65c06e
Removed unused imports
2013-05-19 15:06:24 +02:00
Oscar Vilaplana
696c053f4f
s/Single Character/String/
2013-05-19 15:04:43 +02:00
Nikolaus Schlemm
88c94f3720
Merge remote-tracking branch 'grimborg/issue-192-expose-fields-for-options' into issue-192-expose-fields-for-options
2013-05-19 14:58:11 +02:00
Oscar Vilaplana
f1f5f92d89
Added tests, cleaned up imports
2013-05-19 14:55:46 +02:00
Nikolaus Schlemm
efca5f6fec
use double quotes for docstring instead of single quotes
2013-05-19 14:54:16 +02:00
Nikolaus Schlemm
b07cfdcf54
FIXED TEST FOR: don't expose fields for GET and DELETE - leaving room for parameters like e.g. filter or paginate
2013-05-19 13:54:13 +02:00
Nikolaus Schlemm
5473f60192
Merge remote-tracking branch 'grimborg/issue-192-expose-fields-for-options' into issue-192-expose-fields-for-options
2013-05-19 13:46:17 +02:00
Nikolaus Schlemm
1154c12b33
don't expose fields for GET and DELETE - leaving room for parameters like e.g. filter or paginate
2013-05-19 11:37:12 +02:00
Nikolaus Schlemm
a91841f7fe
WORKAROUND: avoid errors like "AttributeError: 'APIRoot' object has no attribute 'get_serializer'"
2013-05-19 11:29:41 +02:00
Oscar Vilaplana
08e9e2042c
Disabled label and help_text in unit test. We should change the test so
...
that it sets them up.
2013-05-19 11:26:56 +02:00
Oscar Vilaplana
b915c1d4d8
Made field label optional in OPTIONS
2013-05-19 11:15:38 +02:00
Nikolaus Schlemm
c0f3a1c397
Integrated status quo of grimborg's awesome humanize_field() for exposing field metadata via OPTIONS :)
2013-05-19 09:25:02 +02:00
Nikolaus Schlemm
9454e23aa9
Merge branch 'master' of git://github.com/tomchristie/django-rest-framework into issue-192-expose-fields-for-options
2013-05-19 09:02:07 +02:00
Tom Christie
7c945b43f0
Only use object permissions in browsable api form generation if an object exists
2013-05-18 23:52:02 +01:00
Tom Christie
4802177766
Enforce object permissions check when rendering forms in browseable API
2013-05-18 21:19:53 +01:00
Tom Christie
4631b91e14
Fix broken 'binary content' in browseable API
2013-05-18 21:12:44 +01:00
Nikolaus Schlemm
843ae60237
Merge branch 'issue-192-expose-fields-for-options' of git://github.com/grimborg/django-rest-framework into issue-192-expose-fields-for-options
...
Conflicts:
rest_framework/tests/fields.py
2013-05-18 18:34:21 +02:00
Nikolaus Schlemm
7f1cc82f96
added unittests for permission check of exposing actions via OPTIONS
2013-05-18 18:29:51 +02:00
Oscar Vilaplana
fecadacab1
added tests for form
2013-05-18 18:27:53 +02:00
Tom Christie
d4721fc1f7
Correct charset on UnicodeJSONRenderer
2013-05-18 17:25:38 +01:00
Tom Christie
bac4bf6e95
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework
2013-05-18 17:22:27 +01:00
Tom Christie
0d3d66cb02
Added proper charset support
2013-05-18 17:21:43 +01:00
Oscar Vilaplana
4dffcb5d77
Added humanized field names and types
2013-05-18 18:10:17 +02:00
Tom Christie
1888f4a1f0
Merge pull request #865 from ryankask/issue-747-lazy-strings-serialized
...
Issue 747 lazy strings serialized
2013-05-18 09:05:42 -07:00
Ryan Kaskel
579f77ceaa
Move function to compat.
2013-05-18 17:04:17 +01:00
Tom Christie
6d5cf527c3
Merge pull request #864 from minddust/fix_missing_min_values
...
Fix missing min values
2013-05-18 08:56:24 -07:00
Nikolaus Schlemm
5ab7cc6e6b
HEAD and OPTIONS should not be exposed as actions as discussed in a42afa04c3 (commitcomment-3241476)
2013-05-18 17:38:47 +02:00
Markus Törnqvist
99848b0321
Drop another case of u'', this time from #530 code
2013-05-18 18:38:37 +03:00
Markus Törnqvist
1fd66fe8c6
Drop u'', it was used inconsistently and breaks for nothing with Python 3.2
2013-05-18 18:27:36 +03:00
Ryan Kaskel
33f702d306
Merge latest changes from master.
2013-05-18 16:26:17 +01:00
Ryan Kaskel
10e451a85a
Handle Python 3 strings and lazy strings.
2013-05-18 16:21:18 +01:00
Stephan Groß
025c40e7d5
Fix order for applying min_value to fields
2013-05-18 17:16:29 +02:00
Nikolaus Schlemm
b225b1d5c9
Merge branch 'master' of git://github.com/tomchristie/django-rest-framework into issue-192-expose-fields-for-options
2013-05-18 17:13:59 +02:00
Markus Törnqvist
48c1b2233b
Merge branch 'master' into mjtorn-master
...
Conflicts:
rest_framework/serializers.py
rest_framework/tests/serializer.py
Fixed conflicts
2013-05-18 18:13:31 +03:00
Nikolaus Schlemm
a42afa04c3
draft for fields' metadata via OPTIONS - needs review and decision
2013-05-18 17:13:23 +02:00
Nikolaus Schlemm
b4dbfa9832
only catch relevant exceptions ;)
2013-05-18 17:10:13 +02:00
Pablo Recio
b9b2297612
Tests proper encoding in JSONRenderer and UnicodeJSONRenderer
2013-05-18 17:06:54 +02:00
Pablo Recio
6dbbbc16da
Better checking if the content can be printable in the BrowsableAPI
2013-05-18 17:06:54 +02:00
Pablo Recio
97f034e3d6
Adds UnicodeJSONRenderer which doesn't ensure ascii
2013-05-18 17:06:54 +02:00
Pablo Recio
c69f960066
Adding a class attribute into JSONRenderer for ensuring ascii, and using it consistently
2013-05-18 17:06:54 +02:00
Stephan Groß
0c81d04170
Add min_value=0 to autogenerated Pos..IntFields
2013-05-18 17:04:20 +02:00
Karol Majta
5bebd29f11
Merge branch 'master' of git://github.com/tomchristie/django-rest-framework
2013-05-18 16:56:38 +02:00
Karol Majta
ebe959b52a
charset param gets now appended to response's Content-Type. Closes #807
2013-05-18 16:45:05 +02:00
Markus Törnqvist
2795e842d6
Two test cases for html rendering of API with labelized model
2013-05-18 17:44:40 +03:00
Markus Törnqvist
e68ea16d7a
Update FieldLabelTest to use new BasicModel.verbose_name
2013-05-18 17:43:47 +03:00
Markus Törnqvist
e2a5ec0350
Change BasicModel.verbose_name
...
Isn't it nicer to test for a text which is different from
what the previous broken behavior was? Now we can really
tell it works!
2013-05-18 17:42:56 +03:00
Tom Christie
3f47eb7a77
Merge pull request #861 from minddust/fix_missing_field_values
...
Remove default values - django sets them for us - cause of #710
2013-05-18 07:32:50 -07:00
Stephan Groß
6714b755f4
Fix missing para..
2013-05-18 16:32:31 +02:00
Stephan Groß
aeea32030b
Add newline
2013-05-18 16:27:11 +02:00
Tom Christie
5f8d353f0b
Rename has_user_through_model -> has_through_model
2013-05-18 15:25:49 +01:00
Stephan Groß
9f9cb97d65
Add TestCases for default field values
2013-05-18 16:24:54 +02:00
Tom Christie
e1a3cab400
Merge pull request #854 from ryankask/issue-775
...
All relations pointing to ManyToManyFields should default to read-only
2013-05-18 07:22:22 -07:00