def test_clean(self): inner = forms.DecimalField() f = LookupTypeField(inner, [('gt', 'gt'), ('lt', 'lt')], required=False) self.assertEqual( f.clean(['12.34', 'lt']), Lookup(to_d(12.34), 'lt')) self.assertEqual( f.clean([]), Lookup(value=None, lookup_type='exact'))
def filter(self, qs, value): if value == '': return super(ListFilter, self).filter(qs, Lookup(value, 'in')) else: value_list = [] value = list(value) total_numbers = len(value) total_imeis = int(total_numbers / 15) x = 0 for i in range(0, total_imeis): y = ((i + 1) * 15) value_list.append(''.join(value[x:y])) x = y return super(ListFilter, self).filter(qs, Lookup(value_list, 'in'))
def test_filtering_skipped_with_list_value_with_blank_lookup(self): return # Now field is required to provide valid lookup_type if it provides any qs = mock.Mock(spec=['filter']) f = Filter(name='somefield', lookup_type=None) result = f.filter(qs, Lookup('value', '')) qs.filter.assert_called_once_with(somefield__exact='value') self.assertNotEqual(qs, result)
def filter(self, queryset, value): list_values = value.split(',') if not all(item.isdigit() for item in list_values): raise ValidationError('All values in %s the are not integer' % str(list_values)) return super(ListFilter, self).filter(queryset, Lookup(list_values, 'in'))
def test_clean(self): inner = forms.DecimalField() f = LookupChoiceField(inner, [('gt', 'gt'), ('lt', 'lt')], required=False) self.assertEqual(f.clean(['12.34', 'lt']), Lookup(to_d(12.34), 'lt')) self.assertEqual(f.clean([]), None) with self.assertRaisesMessage(forms.ValidationError, 'Select a lookup.'): f.clean(['12.34', ''])
def test_filtering_with_list_value(self): qs = mock.Mock(spec=['filter']) f = Filter(name='somefield', lookup_type=['some_lookup_type']) result = f.filter(qs, Lookup('value', 'some_lookup_type')) qs.filter.assert_called_once_with(somefield__some_lookup_type='value') self.assertNotEqual(qs, result)
def test_filtering_skipped_with_list_value_with_blank(self): qs = mock.Mock() f = Filter(name='somefield', lookup_type=['some_lookup_type']) result = f.filter(qs, Lookup('', 'some_lookup_type')) self.assertListEqual(qs.method_calls, []) self.assertEqual(qs, result)
def filter(self, qs, value): multiple_vals = value.split(u",") multiple_vals = self.sanitize(multiple_vals) multiple_vals = map(self.customize, multiple_vals) return super().filter(qs, Lookup(multiple_vals, 'in'))
def test_empty_lookup_expr(self): with self.assertRaisesMessage(ValueError, ''): Lookup('Value', '')
def filter(self, qs, value): if value: value = value.split(',') lookup = Lookup(value, 'in') return super(MultipleCharFilter, self).filter(qs, lookup)
def filter(self, qs, value): value_list = value.split(u',') return super(ListFilter, self).filter(qs, Lookup(value_list, 'in'))
def filter(self, qs, value): return super().filter(qs, Lookup(self.get_lookups(value), 'in'))
def filter(self, qs, value): return super().filter(qs, Lookup(value, 'in'))
def filter(self, qs, value): if not value: return qs value_list = [int(x) for x in value.split(',')] return super(ListFilter, self).filter(qs, Lookup(value_list, 'in'))
def filter(self, qs, value): if not value: return qs value = value if value.endswith(',') is False else value[:-1] value_list = value.split(',') return super(ListFilter, self).filter(qs, Lookup(value_list, 'in'))
def test_lookup_false(self): self.assertFalse(Lookup(False, 'exact')) self.assertFalse(Lookup(0, 'exact')) self.assertFalse(Lookup('', 'exact')) self.assertFalse(Lookup(None, 'exact'))
def test_lookup_true(self): self.assertTrue(Lookup(True, 'exact')) self.assertTrue(Lookup(1, 'exact')) self.assertTrue(Lookup('1', 'exact')) self.assertTrue(Lookup(datetime.now(), 'exact'))
def filter(self, qs, value): value_list = [s for s in value.split(u',') if s] if not value_list: return qs return super(ListFilter, self).filter(qs, Lookup(value_list, 'in'))
def filter(self, qs, value): value_list = value.split(u',') if len(value_list) > 0 and value_list[0]: return super(ListFilter, self).filter(qs, Lookup(value_list, 'in')) return qs
def test_lookup_false(self): qs = mock.Mock(spec=['filter']) f = self.test_filter_class(name='somefield') result = f.filter(qs, Lookup('', 'exact')) self.assertEqual(qs, result)
def filter(self, qs, value): if value is None: return qs value_list = [v.strip() for v in value.split(u',')] return super(ListFilter, self).filter(qs, Lookup(value_list, 'in'))
def test_lookup_true(self): qs = mock.Mock(spec=['filter']) f = self.test_filter_class(name='somefield') result = f.filter(qs, Lookup('somesearch', 'exact')) qs.filter.assert_called_once_with(somefield__exact='somesearch') self.assertNotEqual(qs, result)
def test_clean(self): inner = forms.DecimalField() f = LookupTypeField(inner, [('gt', 'gt'), ('lt', 'lt')]) self.assertEqual(f.clean(['12.34', 'lt']), Lookup(to_d(12.34), 'lt'))
def filter(self, qs, value): return super().filter(qs, Lookup([value.split(',')[0]], 'in'))
def filter(self, qs, value): vehicle_number = compare_format(value) return super(VehicleFilter, self).filter(qs, Lookup(vehicle_number, 'icontains'))
def test_empty_attrs(self): with self.assertRaisesMessage(ValueError, ''): Lookup(None, None) with self.assertRaisesMessage(ValueError, ''): Lookup('', '')
def filter(self, qs, value): return super(ListFilter, self).filter(qs, Lookup(value.split(u","), "in"))
def test_empty_value(self): with self.assertRaisesMessage(ValueError, ''): Lookup('', 'exact')