@@ -124,12 +124,7 @@ def generateTestData(cls):
124124 C .objects .create (title = "C3" )
125125
126126 john = Person .objects .create (name = "John" )
127-
128- # Created at least one second apart
129- mark = Person .objects .create (name = "Mark" , best_friend = john )
130- mark .time_joined = add_timedelta (mark .time_joined , datetime .timedelta (seconds = 1 ))
131- mark .datetime_joined += datetime .timedelta (seconds = 1 )
132- mark .save ()
127+ Person .objects .create (name = "Mark" , best_friend = john )
133128
134129 def test_alllookupsfilter (self ):
135130 # Test __iendswith
@@ -317,6 +312,39 @@ def test_m2m_relation(self):
317312 titles = set ([p .title for p in f ])
318313 self .assertEqual (titles , set (["First post" , "Second post" ]))
319314
315+ def test_get_filterset_subset (self ):
316+ related_filter = NoteFilterWithRelated .base_filters ['author' ]
317+ filterset_class = related_filter .get_filterset_subset (['email' ])
318+
319+ # ensure that the class name is useful when debugging
320+ self .assertEqual (filterset_class .__name__ , 'UserFilterSubset' )
321+
322+ # ensure that the FilterSet subset only contains the requested fields
323+ self .assertIn ('email' , filterset_class .base_filters )
324+ self .assertEqual (len (filterset_class .base_filters ), 1 )
325+
326+
327+ class DatetimeTests (TestCase ):
328+
329+ if django .VERSION >= (1 , 8 ):
330+ @classmethod
331+ def setUpTestData (cls ):
332+ cls .generateTestData ()
333+
334+ else :
335+ def setUp (self ):
336+ self .generateTestData ()
337+
338+ @classmethod
339+ def generateTestData (cls ):
340+ john = Person .objects .create (name = "John" )
341+
342+ # Created at least one second apart
343+ mark = Person .objects .create (name = "Mark" , best_friend = john )
344+ mark .time_joined = add_timedelta (mark .time_joined , datetime .timedelta (seconds = 1 ))
345+ mark .datetime_joined += datetime .timedelta (seconds = 1 )
346+ mark .save ()
347+
320348 def test_implicit_date_filters (self ):
321349 john = Person .objects .get (name = "John" )
322350 # Mark was created at least one second after John.
@@ -397,6 +425,23 @@ class Meta:
397425 p = list (f )[0 ]
398426 self .assertEqual (p .name , "John" )
399427
428+
429+ class FilterOverrideTests (TestCase ):
430+
431+ if django .VERSION >= (1 , 8 ):
432+ @classmethod
433+ def setUpTestData (cls ):
434+ cls .generateTestData ()
435+
436+ else :
437+ def setUp (self ):
438+ self .generateTestData ()
439+
440+ @classmethod
441+ def generateTestData (cls ):
442+ john = Person .objects .create (name = "John" )
443+ Person .objects .create (name = "Mark" , best_friend = john )
444+
400445 def test_inset_number_filter (self ):
401446 p1 = Person .objects .get (name = "John" ).pk
402447 p2 = Person .objects .get (name = "Mark" ).pk
@@ -434,17 +479,6 @@ def test_inset_number_filter(self):
434479 self .assertIn (p1 , f )
435480 self .assertIn (p2 , f )
436481
437- def test_get_filterset_subset (self ):
438- related_filter = NoteFilterWithRelated .base_filters ['author' ]
439- filterset_class = related_filter .get_filterset_subset (['email' ])
440-
441- # ensure that the class name is useful when debugging
442- self .assertEqual (filterset_class .__name__ , 'UserFilterSubset' )
443-
444- # ensure that the FilterSet subset only contains the requested fields
445- self .assertIn ('email' , filterset_class .base_filters )
446- self .assertEqual (len (filterset_class .base_filters ), 1 )
447-
448482 def test_inset_char_filter (self ):
449483 p1 = Person .objects .get (name = "John" ).name
450484 p2 = Person .objects .get (name = "Mark" ).name
@@ -483,7 +517,7 @@ def test_inset_char_filter(self):
483517 self .assertIn (p2 , f )
484518
485519
486- class FilterSetExclutionTests (TestCase ):
520+ class FilterExclusionTests (TestCase ):
487521
488522 if django .VERSION >= (1 , 8 ):
489523 @classmethod
0 commit comments