示例#1
0
 def test_exceptions(self):
     with self.assertRaises(TypeError):
         get_values_list(object(), 'foo', 'bar', flat=True)
     with self.assertRaises(TypeError):
         get_values_list(object(), 'foo', something=None)
     with self.assertRaises(LookupNotFound):
         get_values_list(object(), 'foo')
     with self.assertRaises(LookupNotFound):
         get_values_list({}, 'foo')
 def test_exceptions(self):
     with self.assertRaises(TypeError):
         get_values_list(object(), 'foo', 'bar', flat=True)
     with self.assertRaises(TypeError):
         get_values_list(object(), 'foo', something=None)
     with self.assertRaises(LookupNotFound):
         get_values_list(object(), 'foo')
     with self.assertRaises(LookupNotFound):
         get_values_list({}, 'foo')
示例#3
0
 def get_values_list_and_assert_orm_invariants(self, obj, *args, **kwargs):
     """
     Gets the specified values list, and asserts that it matches the ORM
     behavior up to ordering.
     """
     queryset = type(obj)._default_manager.filter(pk=obj.pk)
     django_values_list = queryset.values_list(*args, **kwargs)
     values_list = get_values_list(obj, *args, **kwargs)
     self.assertEqual(set(values_list), set(django_values_list))
     return values_list
 def get_values_list_and_assert_orm_invariants(self, obj, *args, **kwargs):
     """
     Gets the specified values list, and asserts that it matches the ORM
     behavior up to ordering.
     """
     queryset = type(obj)._default_manager.filter(pk=obj.pk)
     django_values_list = queryset.values_list(*args, **kwargs)
     values_list = get_values_list(obj, *args, **kwargs)
     self.assertEqual(set(values_list), set(django_values_list))
     return values_list
示例#5
0
 def test_non_field_lookup_on_django_model(self):
     values_list = get_values_list(TestObj.objects.create(),
                                   'some_property__x',
                                   flat=True)
     self.assertEqual(values_list, ['y'])
示例#6
0
 def test_non_field_lookup_getitem(self):
     obj = dict(a=dict(c='x', d='y'), b=[1, 2])
     self.assertEqual(set(get_values_list(obj, 'a__c', 'b')), {('x', 1),
                                                               ('x', 2)})
     self.assertEqual(set(get_values_list(obj, 'a__c', flat=True)), {'x'})
示例#7
0
 def test_non_field_lookup_attribute(self):
     obj = AttrClass(a=AttrClass(c='x', d='y'), b=[1, 2])
     self.assertEqual(set(get_values_list(obj, 'a__c', 'b')), {('x', 1),
                                                               ('x', 2)})
     self.assertEqual(set(get_values_list(obj, 'a__c', flat=True)), {'x'})
 def test_non_field_lookup_on_django_model(self):
     values_list = get_values_list(
         TestObj.objects.create(), 'some_property__x', flat=True)
     self.assertEqual(values_list, ['y'])
 def test_non_field_lookup_getitem(self):
     obj = dict(a=dict(c='x', d='y'), b=[1, 2])
     self.assertEqual(set(get_values_list(obj, 'a__c', 'b')), {('x', 1), ('x', 2)})
     self.assertEqual(set(get_values_list(obj, 'a__c', flat=True)), {'x'})
示例#10
0
 def test_non_field_lookup_attribute(self):
     obj = AttrClass(a=AttrClass(c='x', d='y'), b=[1, 2])
     self.assertEqual(set(get_values_list(obj, 'a__c', 'b')), {('x', 1), ('x', 2)})
     self.assertEqual(set(get_values_list(obj, 'a__c', flat=True)), {'x'})