@@ -322,20 +322,21 @@ class Meta:
322
322
['title' , 'price' , 'average_rating' ])
323
323
324
324
def test_model_no_fields_or_exclude (self ):
325
- class F (FilterSet ):
326
- class Meta :
327
- model = Book
325
+ with self .assertRaises (AssertionError ) as excinfo :
326
+ class F (FilterSet ):
327
+ class Meta :
328
+ model = Book
328
329
329
- self .assertEqual (len (F .declared_filters ), 0 )
330
- self .assertEqual (len (F .base_filters ), 0 )
331
- self .assertListEqual (list (F .base_filters ), [])
330
+ self .assertIn (
331
+ "Setting 'Meta.model' without either 'Meta.fields' or 'Meta.exclude'" ,
332
+ str (excinfo .exception )
333
+ )
332
334
333
- def test_model_exclude_is_none (self ):
334
- # equivalent to unset fields/exclude
335
+ def test_model_fields_empty (self ):
335
336
class F (FilterSet ):
336
337
class Meta :
337
338
model = Book
338
- exclude = None
339
+ fields = []
339
340
340
341
self .assertEqual (len (F .declared_filters ), 0 )
341
342
self .assertEqual (len (F .base_filters ), 0 )
@@ -612,6 +613,7 @@ def test_settings_default(self):
612
613
class F (FilterSet ):
613
614
class Meta :
614
615
model = User
616
+ fields = []
615
617
616
618
# Ensure default is not IGNORE
617
619
self .assertEqual (F ().strict , STRICTNESS .RETURN_NO_RESULTS )
@@ -624,6 +626,7 @@ def test_meta_value(self):
624
626
class F (FilterSet ):
625
627
class Meta :
626
628
model = User
629
+ fields = []
627
630
strict = STRICTNESS .IGNORE
628
631
629
632
self .assertEqual (F ().strict , STRICTNESS .IGNORE )
@@ -632,6 +635,7 @@ def test_init_default(self):
632
635
class F (FilterSet ):
633
636
class Meta :
634
637
model = User
638
+ fields = []
635
639
strict = STRICTNESS .IGNORE
636
640
637
641
strict = STRICTNESS .RAISE_VALIDATION_ERROR
@@ -641,6 +645,7 @@ def test_legacy_value(self):
641
645
class F (FilterSet ):
642
646
class Meta :
643
647
model = User
648
+ fields = []
644
649
645
650
self .assertEqual (F (strict = False ).strict , STRICTNESS .IGNORE )
646
651
@@ -770,6 +775,7 @@ class F(FilterSet):
770
775
771
776
class Meta :
772
777
model = User
778
+ fields = []
773
779
774
780
def filter_f (inner_self , qs , name , value ):
775
781
self .assertIsInstance (inner_self , F )
0 commit comments