Exemple #1
0
    def test_values(self):
        SomeModel.objects.create(p='foo', q=1)
        SomeModel.objects.create(p='bar', q=2)

        self.assertEqual(
            SomeModel.objects.filter().order_by('-q').values('q'),
            QuerySet(
                [{'q': 2},{'q': 1},],
                model=SomeModel
            )
        )

        self.assertEqual(
            SomeModel.objects.filter().order_by('-q').values('p', 'q'),
            QuerySet(
                [
                    {'q': 2, 'p': 'bar'},
                    {'q': 1, 'p': 'foo'},
                ],
                model=SomeModel
            )
        )

        self.assertSetEqual(
            set(SomeModel.objects.filter().order_by('-q').values()[0].keys()),
            {'p', 'q', 'created', 'updated', 'id'}
        )
Exemple #2
0
    def test_values_list(self):
        SomeModel.objects.create(p='foo', q=1)
        SomeModel.objects.create(p='bar', q=2)

        self.assertEqual(
            SomeModel.objects.filter().order_by('-q').values_list('p', 'q'),
            QuerySet(
                [
                    ('bar', 2,),
                    ('foo', 1,)
                ],
                model=SomeModel
            )
        )

        self.assertEqual(
            SomeModel.objects.filter().order_by('-q').values_list('q', 'p'),
            QuerySet(
                [
                    (2, 'bar',),
                    (1, 'foo',)
                ],
                model=SomeModel
            )
        )
Exemple #3
0
    def test_reverse(self):
        SomeModel(p='foo', q=1)
        SomeModel(p='foo', q=2)

        self.assertEqual(
            SomeModel.objects.filter().order_by('q').reverse().values_list(
                'q'), QuerySet([(2, ), (1, )], model=SomeModel))

        self.assertEqual(
            SomeModel.objects.filter().order_by(
                'q').reverse().reverse().values_list('q'),
            QuerySet([(1, ), (2, )], model=SomeModel))
Exemple #4
0
    def test_order_by(self):
        SomeModel(p='foo', q=3)
        SomeModel(p='foo', q=1)
        SomeModel(p='foo', q=2)

        self.assertEqual(
            SomeModel.objects.filter().order_by('q').values_list('q'),
            QuerySet([(1, ), (2, ), (3, )], model=SomeModel))

        self.assertEqual(
            SomeModel.objects.filter().order_by('-q').values_list('q'),
            QuerySet([(3, ), (2, ), (1, )], model=SomeModel))

        with self.assertRaises(AttributeError):
            SomeModel.objects.filter().order_by()
Exemple #5
0
    def filter(self, **kwargs):
        q = Q(**kwargs)

        return QuerySet(
            filter(q.comparator, self._object_store),
            model=self.model
        )
Exemple #6
0
    def test_values_list_flat(self):
        SomeModel(p='foo', q=1)
        SomeModel(p='bar', q=2)

        self.assertEqual(
            SomeModel.objects.filter().order_by('-q').values_list('p',
                                                                  flat=True),
            QuerySet(['bar', 'foo'], model=SomeModel))

        with self.assertRaises(TypeError):
            SomeModel.objects.filter().order_by('-q').values_list('p',
                                                                  'q',
                                                                  flat=True)
Exemple #7
0
 def all(self):
     return QuerySet(
         self._object_store,
         model=self.model
     )
Exemple #8
0
 def all(self):
     return QuerySet(self._object_store)
Exemple #9
0
 def get_queryset(self) -> QuerySet:
     return QuerySet(self.store, model=self.model)