From 14e139ecdfeec555265eec11d7bca7596311e348 Mon Sep 17 00:00:00 2001 From: Tim Graham Date: Wed, 18 Sep 2013 09:35:51 -0400 Subject: [PATCH] [1.6.x] Fixed #21118 -- Isolated a test that uses the database. Thanks rmboggs for the report. Backport of 4f40b97d97 from master --- tests/utils_tests/test_simplelazyobject.py | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/tests/utils_tests/test_simplelazyobject.py b/tests/utils_tests/test_simplelazyobject.py index 1b3393cdd8..0d7c21686b 100644 --- a/tests/utils_tests/test_simplelazyobject.py +++ b/tests/utils_tests/test_simplelazyobject.py @@ -4,6 +4,8 @@ import copy import pickle import sys +from django.contrib.auth.models import User +from django.test import TestCase as DjangoTestCase from django.utils import six from django.utils.unittest import TestCase from django.utils.functional import SimpleLazyObject, empty @@ -162,9 +164,19 @@ class TestUtilsSimpleLazyObject(TestCase): self.assertTrue(lazy1 != lazy3) self.assertFalse(lazy1 != lazy2) - def test_pickle_py2_regression(self): - from django.contrib.auth.models import User + def test_list_set(self): + lazy_list = SimpleLazyObject(lambda: [1, 2, 3, 4, 5]) + lazy_set = SimpleLazyObject(lambda: set([1, 2, 3, 4])) + self.assertTrue(1 in lazy_list) + self.assertTrue(1 in lazy_set) + self.assertFalse(6 in lazy_list) + self.assertFalse(6 in lazy_set) + self.assertEqual(len(lazy_list), 5) + self.assertEqual(len(lazy_set), 4) +class TestUtilsSimpleLazyObjectDjangoTestCase(DjangoTestCase): + + def test_pickle_py2_regression(self): # See ticket #20212 user = User.objects.create_user('johndoe', 'john@example.com', 'pass') x = SimpleLazyObject(lambda: user)