Exemplo n.º 1
0
    def test_reorder_multi_index(self):
        class SomeModel(pw.Model):
            some_field = pw.CharField(null=True)

            class Meta:
                database = self.db
                indexes = ((('id', 'some_field'), False), )

        self.evolve_and_check_noop()
        self.assertEqual(
            sorted(
                peeweedbevolve.normalize_indexes(
                    peeweedbevolve.get_indexes_by_table(self.db,
                                                        'somemodel'))),
            [(u'somemodel', (u'id', ), True),
             (u'somemodel', (u'id', u'some_field'), False)])
        peeweedbevolve.clear()

        class SomeModel(pw.Model):
            some_field = pw.CharField(null=True)

            class Meta:
                database = self.db
                indexes = ((('some_field', 'id'), False), )

        self.evolve_and_check_noop()
        self.assertEqual(
            sorted(
                peeweedbevolve.normalize_indexes(
                    peeweedbevolve.get_indexes_by_table(self.db,
                                                        'somemodel'))),
            [(u'somemodel', (u'id', ), True),
             (u'somemodel', (u'some_field', u'id'), False)])
Exemplo n.º 2
0
    def test_drop_index_table_rename(self):
        class SomeModel2(pw.Model):
            some_field = pw.CharField(index=True, null=True)

            class Meta:
                database = self.db

        self.evolve_and_check_noop()
        self.assertEqual(
            sorted(
                peeweedbevolve.normalize_indexes(
                    peeweedbevolve.get_indexes_by_table(self.db,
                                                        'somemodel2'))),
            [(u'somemodel2', (u'id', ), True),
             (u'somemodel2', (u'some_field', ), False)])
        peeweedbevolve.clear()

        class SomeModel(pw.Model):
            some_field = pw.CharField(null=True)

            class Meta:
                database = self.db
                aka = 'somemodel2'

        self.evolve_and_check_noop()
        self.assertEqual(
            sorted(
                peeweedbevolve.normalize_indexes(
                    peeweedbevolve.get_indexes_by_table(self.db,
                                                        'somemodel'))),
            [
                (u'somemodel', (u'id', ), True),
            ])
Exemplo n.º 3
0
    def test_drop_unique(self):
        class SomeModel(pw.Model):
            some_field = pw.CharField(unique=True, null=True)

            class Meta:
                database = self.db

        self.evolve_and_check_noop()
        self.assertEqual(
            sorted(
                peeweedbevolve.normalize_indexes(
                    peeweedbevolve.get_indexes_by_table(self.db,
                                                        'somemodel'))),
            [(u'somemodel', (u'id', ), True),
             (u'somemodel', (u'some_field', ), True)])
        peeweedbevolve.clear()
        self.test_create_table()
        self.assertEqual(
            sorted(
                peeweedbevolve.normalize_indexes(
                    peeweedbevolve.get_indexes_by_table(self.db,
                                                        'somemodel'))),
            [
                (u'somemodel', (u'id', ), True),
            ])
Exemplo n.º 4
0
    def test_add_index_column_rename(self):
        self.test_create_table()
        peeweedbevolve.clear()

        class SomeModel(pw.Model):
            some_field2 = pw.CharField(index=True, null=True, aka='some_field')

            class Meta:
                database = self.db

        self.evolve_and_check_noop()
        self.assertEqual(
            sorted(
                peeweedbevolve.normalize_indexes(
                    self.db.get_indexes('somemodel'))),
            [(u'somemodel', (u'id', ), True),
             (u'somemodel', (u'some_field2', ), False)])