コード例 #1
0
    def test_sort_related(self):
        "Sorts on a reverse foreign key property."
        view = DataView(json=[
            {
                'concept': self.first_name.pk
            },
            {
                'concept': self.last_name.pk
            },
            {
                'concept': self.project_name.pk,
                'sort': 'asc',
                'visible': False
            },
        ])

        queryset = view.apply()

        exporter = export.BaseExporter(view)
        exporter.params.insert(0, (RawFormatter(keys=['pk']), 1))
        exporter.row_length += 1

        self.assertEqual(list(exporter.write(queryset.raw())),
                         [(3, u'Erick', u'Smith'), (4, u'Aaron', u'Harris'),
                          (5, u'Zac', u'Cook'), (6, u'Mel', u'Brooks'),
                          (1, u'Eric', u'Smith'), (2, u'Erin', u'Jones')])
コード例 #2
0
ファイル: tests.py プロジェクト: hassanNS/avocado
    def test_sort_related(self):
        "Sorts on a reverse foreign key property."
        view = DataView(
            json=[
                {"concept": self.first_name.pk},
                {"concept": self.last_name.pk},
                {"concept": self.project_name.pk, "sort": "asc", "visible": False},
            ]
        )

        queryset = view.apply()

        exporter = export.BaseExporter(view)
        exporter.params.insert(0, (RawFormatter(keys=["pk"]), 1))
        exporter.row_length += 1

        self.assertEqual(
            list(exporter.write(queryset.raw())),
            [
                (3, u"Erick", u"Smith"),
                (4, u"Aaron", u"Harris"),
                (5, u"Zac", u"Cook"),
                (6, u"Mel", u"Brooks"),
                (1, u"Eric", u"Smith"),
                (2, u"Erin", u"Jones"),
            ],
        )
コード例 #3
0
ファイル: tests.py プロジェクト: hassanNS/avocado
    def setUp(self):
        management.call_command("avocado", "init", "tests", quiet=True)
        salary_concept = DataField.objects.get(field_name="salary").concepts.all()[0]

        view = DataView(json={"ordering": [[salary_concept.pk, "desc"]]})
        self.query = view.apply(tree=models.Employee).raw()
        # Ick..
        self.exporter = export.BaseExporter(view)
        self.exporter.params.insert(0, (RawFormatter(keys=["pk"]), 1))
        self.exporter.row_length += 1
コード例 #4
0
    def setUp(self):
        management.call_command('avocado', 'init', 'tests', quiet=True)
        salary_concept = DataField.objects.get(
            field_name='salary').concepts.all()[0]

        view = DataView(json={'ordering': [[salary_concept.pk, 'desc']]})
        self.query = view.apply(tree=models.Employee).raw()
        # Ick..
        self.exporter = export.BaseExporter(view)
        self.exporter.params.insert(0, (RawFormatter(keys=['pk']), 1))
        self.exporter.row_length += 1
コード例 #5
0
ファイル: tests.py プロジェクト: leipzig/avocado
    def test_dataview_order_by(self):
        f = DataField(app_name='lexicon', model_name='month', field_name='id')
        f.save()

        c = DataConcept()
        c.save()

        cf = DataConceptField(field=f, concept=c)
        cf.save()

        v = DataView({'ordering': [c.pk]})

        qs = Month.objects.filter(label__startswith='J').values('id')
        self.assertEqual(str(v.apply(qs).query), 'SELECT "lexicon_month"."id" FROM "lexicon_month" WHERE "lexicon_month"."label" LIKE J% ESCAPE \'\\\'  ORDER BY "lexicon_month"."order" ASC')
コード例 #6
0
    def test_dataview_order_by(self):
        f = DataField(app_name='tests', model_name='month', field_name='id')
        f.save()

        c = DataConcept()
        c.save()

        cf = DataConceptField(field=f, concept=c)
        cf.save()

        v = DataView({'ordering': [[c.pk, 'asc']]})

        qs = Month.objects.filter(label__startswith='J').values('id')
        self.assertEqual(
            unicode(v.apply(qs).query),
            'SELECT "tests_month"."id" FROM "tests_month" WHERE "tests_month"."label" LIKE J% ESCAPE \'\\\'  ORDER BY "tests_month"."order" ASC'
        )
コード例 #7
0
ファイル: tests.py プロジェクト: aaron0browne/avocado
    def test_view(self):
        salary_field = DataField.objects.get_by_natural_key('exporting', 'title', 'salary')
        salary_concept = DataConcept()
        salary_concept.save()
        DataConceptField(concept=salary_concept, field=salary_field, order=1).save()

        view = DataView(json={'ordering': [[salary_concept.pk, 'desc']]})
        query = view.apply(tree=models.Employee).raw()

        # Ick..
        exporter = export.CSVExporter(view)
        exporter.params.insert(0, (RawFormatter(keys=['pk']), 1))
        exporter.row_length += 1

        buff = exporter.write(query)
        buff.seek(0)

        lines = buff.read().splitlines()
        # Skip the header
        self.assertEqual([int(x) for x in lines[1:]], [2, 4, 6, 1, 3, 5])