Example #1
0
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)

        for instance_type in instance_type_choices:
            for score_type in score_types:
                field_name = str(instance_type[0]).replace(
                    '-', '_') + '_' + str(score_type[0])
                for lookup_expr in ['gte', 'lte']:
                    self.filters[field_name + '__' +
                                 lookup_expr] = NumberFilter(
                                     field_name=field_name,
                                     label=str(instance_type[1]) + ' ' +
                                     str(score_type[1]) + ' ' +
                                     verbose_lookup_expr(lookup_expr),
                                     lookup_expr=lookup_expr)
                self.filters[field_name + '__isnull'] = BooleanFilter(
                    field_name=field_name,
                    label=str(instance_type[1]) + ' ' + str(score_type[1]) +
                    ' ' + verbose_lookup_expr('isnull'),
                    lookup_expr='isnull')
Example #2
0
 def test_overridden_settings(self):
     verbose_lookup = verbose_lookup_expr('exact')
     self.assertEqual(verbose_lookup, 'is equal to')
Example #3
0
 def test_missing_keys(self):
     verbose_lookup = verbose_lookup_expr('foo__bar__lt')
     self.assertEqual(verbose_lookup, 'foo bar is less than')
Example #4
0
 def test_verbose_expression(self):
     verbose_lookup = verbose_lookup_expr('date__lt')
     self.assertEqual(verbose_lookup, 'date is less than')
Example #5
0
 def test_exact(self):
     # Exact should default to empty. A verbose expression is unnecessary,
     # and this behavior works well with list syntax for `Meta.fields`.
     verbose_lookup = verbose_lookup_expr('exact')
     self.assertEqual(verbose_lookup, '')