diff options
Diffstat (limited to 'djangorestframework/tests/resources.py')
| -rw-r--r-- | djangorestframework/tests/resources.py | 31 | 
1 files changed, 31 insertions, 0 deletions
| diff --git a/djangorestframework/tests/resources.py b/djangorestframework/tests/resources.py new file mode 100644 index 00000000..fd1226be --- /dev/null +++ b/djangorestframework/tests/resources.py @@ -0,0 +1,31 @@ +"""Tests for the resource module""" +from django.test import TestCase +from djangorestframework.resources import _object_to_data + +import datetime +import decimal + +class TestObjectToData(TestCase):  +    """Tests for the _object_to_data function""" + +    def test_decimal(self): +        """Decimals need to be converted to a string representation.""" +        self.assertEquals(_object_to_data(decimal.Decimal('1.5')), '1.5') + +    def test_function(self): +        """Functions with no arguments should be called.""" +        def foo(): +            return 1 +        self.assertEquals(_object_to_data(foo), 1) + +    def test_method(self): +        """Methods with only a ``self`` argument should be called.""" +        class Foo(object): +            def foo(self): +                return 1 +        self.assertEquals(_object_to_data(Foo().foo), 1) + +    def test_datetime(self): +        """datetime objects are left as-is.""" +        now = datetime.datetime.now() +        self.assertEquals(_object_to_data(now), now)
\ No newline at end of file | 
