From c830dbe39fe078e910291c855c97baabc74953d2 Mon Sep 17 00:00:00 2001 From: Russell Keith-Magee Date: Tue, 12 Oct 2010 00:55:31 +0000 Subject: [PATCH] Migrated properties doctests. Thanks to George Sakkis for the patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@14165 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- tests/modeltests/properties/models.py | 19 ------------------- tests/modeltests/properties/tests.py | 20 ++++++++++++++++++++ 2 files changed, 20 insertions(+), 19 deletions(-) create mode 100644 tests/modeltests/properties/tests.py diff --git a/tests/modeltests/properties/models.py b/tests/modeltests/properties/models.py index 5326e4ec5f..390efe3a22 100644 --- a/tests/modeltests/properties/models.py +++ b/tests/modeltests/properties/models.py @@ -19,22 +19,3 @@ class Person(models.Model): full_name = property(_get_full_name) full_name_2 = property(_get_full_name, _set_full_name) - -__test__ = {'API_TESTS':""" ->>> a = Person(first_name='John', last_name='Lennon') ->>> a.save() ->>> a.full_name -'John Lennon' - -# The "full_name" property hasn't provided a "set" method. ->>> a.full_name = 'Paul McCartney' -Traceback (most recent call last): - ... -AttributeError: can't set attribute - -# But "full_name_2" has, and it can be used to initialise the class. ->>> a2 = Person(full_name_2 = 'Paul McCartney') ->>> a2.save() ->>> a2.first_name -'Paul' -"""} diff --git a/tests/modeltests/properties/tests.py b/tests/modeltests/properties/tests.py new file mode 100644 index 0000000000..e31ac58d4d --- /dev/null +++ b/tests/modeltests/properties/tests.py @@ -0,0 +1,20 @@ +from django.test import TestCase +from models import Person + +class PropertyTests(TestCase): + + def setUp(self): + self.a = Person(first_name='John', last_name='Lennon') + self.a.save() + + def test_getter(self): + self.assertEqual(self.a.full_name, 'John Lennon') + + def test_setter(self): + # The "full_name" property hasn't provided a "set" method. + self.assertRaises(AttributeError, setattr, self.a, 'full_name', 'Paul McCartney') + + # But "full_name_2" has, and it can be used to initialise the class. + a2 = Person(full_name_2 = 'Paul McCartney') + a2.save() + self.assertEqual(a2.first_name, 'Paul')