示例#1
0
    def test_adding_string(self):
        blueprint = Blueprint('users')
        blueprint.string('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" VARCHAR NOT NULL',
            statements[0]
        )

        blueprint = Blueprint('users')
        blueprint.string('foo', 100)
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" VARCHAR NOT NULL',
            statements[0]
        )

        blueprint = Blueprint('users')
        blueprint.string('foo', 100).nullable().default('bar')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" VARCHAR NULL DEFAULT \'bar\'',
            statements[0]
        )
    def test_adding_small_integer(self):
        blueprint = Blueprint("users")
        blueprint.small_integer("foo")
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD COLUMN "foo" SMALLINT NOT NULL', statements[0])

        blueprint = Blueprint("users")
        blueprint.small_integer("foo", True)
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD COLUMN "foo" SMALLSERIAL PRIMARY KEY NOT NULL', statements[0])
示例#3
0
    def test_drop_column(self):
        blueprint = Blueprint('users')
        blueprint.drop_column('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` DROP `foo`', statements[0])

        blueprint = Blueprint('users')
        blueprint.drop_column('foo', 'bar')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` DROP `foo`, DROP `bar`', statements[0])
    def test_drop_column(self):
        blueprint = Blueprint('users')
        blueprint.drop_column('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" DROP COLUMN "foo"', statements[0])

        blueprint = Blueprint('users')
        blueprint.drop_column('foo', 'bar')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" DROP COLUMN "foo", DROP COLUMN "bar"', statements[0])
    def test_adding_double(self):
        blueprint = Blueprint("users")
        blueprint.double("foo", 15, 8)
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD COLUMN "foo" DOUBLE PRECISION NOT NULL', statements[0])
    def test_adding_timestamp(self):
        blueprint = Blueprint("users")
        blueprint.timestamp("foo")
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD COLUMN "foo" TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL', statements[0])
示例#7
0
    def test_rename_table(self):
        blueprint = Blueprint('users')
        blueprint.rename('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" RENAME TO "foo"', statements[0])
    def test_drop_foreign(self):
        blueprint = Blueprint('users')
        blueprint.drop_unique('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" DROP CONSTRAINT foo', statements[0])
    def test_adding_primary_key(self):
        blueprint = Blueprint('users')
        blueprint.primary('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD PRIMARY KEY ("foo")', statements[0])
示例#10
0
    def test_drop_foreign(self):
        blueprint = Blueprint('users')
        blueprint.drop_foreign('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` DROP FOREIGN KEY foo', statements[0])
示例#11
0
    def test_adding_big_incrementing_id(self):
        blueprint = Blueprint("users")
        blueprint.big_increments("id")
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD COLUMN "id" BIGSERIAL PRIMARY KEY NOT NULL', statements[0])
示例#12
0
    def test_adding_index(self):
        blueprint = Blueprint("users")
        blueprint.index(["foo", "bar"], "baz")
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('CREATE INDEX baz ON "users" ("foo", "bar")', statements[0])
示例#13
0
    def test_drop_index(self):
        blueprint = Blueprint('users')
        blueprint.drop_index('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('DROP INDEX foo', statements[0])
示例#14
0
    def test_adding_binary(self):
        blueprint = Blueprint("users")
        blueprint.binary("foo")
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD COLUMN "foo" BYTEA NOT NULL', statements[0])
示例#15
0
    def test_drop_primary(self):
        blueprint = Blueprint('users')
        blueprint.drop_primary('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` DROP PRIMARY KEY', statements[0])
示例#16
0
    def test_drop_table_if_exists(self):
        blueprint = Blueprint('users')
        blueprint.drop_if_exists()
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('DROP TABLE IF EXISTS "users"', statements[0])
示例#17
0
    def test_drop_primary(self):
        blueprint = Blueprint("users")
        blueprint.drop_primary("foo")
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" DROP CONSTRAINT users_pkey', statements[0])
示例#18
0
    def test_drop_index(self):
        blueprint = Blueprint("users")
        blueprint.drop_index("foo")
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual("DROP INDEX foo", statements[0])
示例#19
0
    def test_adding_unique_key(self):
        blueprint = Blueprint("users")
        blueprint.unique("foo", "bar")
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD CONSTRAINT bar UNIQUE ("foo")', statements[0])
示例#20
0
    def test_drop_table(self):
        blueprint = Blueprint('users')
        blueprint.drop()
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('DROP TABLE `users`', statements[0])
示例#21
0
    def test_adding_decimal(self):
        blueprint = Blueprint("users")
        blueprint.decimal("foo", 5, 2)
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD COLUMN "foo" DECIMAL(5, 2) NOT NULL', statements[0])
示例#22
0
    def test_drop_timestamps(self):
        blueprint = Blueprint('users')
        blueprint.drop_timestamps()
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" DROP COLUMN "created_at", DROP COLUMN "updated_at"', statements[0])
示例#23
0
    def test_drop_table_if_exists(self):
        blueprint = Blueprint("users")
        blueprint.drop_if_exists()
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual("DROP TABLE IF EXISTS `users`", statements[0])
示例#24
0
    def test_drop_unique(self):
        blueprint = Blueprint('users')
        blueprint.drop_unique('foo')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` DROP INDEX foo', statements[0])
示例#25
0
    def test_rename_table(self):
        blueprint = Blueprint('users')
        blueprint.rename('foo')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" RENAME TO "foo"', statements[0])
示例#26
0
    def test_drop_index(self):
        blueprint = Blueprint('users')
        blueprint.drop_index('foo')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('DROP INDEX foo', statements[0])
示例#27
0
    def test_adding_index(self):
        blueprint = Blueprint('users')
        blueprint.index('foo', 'bar')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('CREATE INDEX bar ON "users" ("foo")', statements[0])
示例#28
0
    def test_drop_index(self):
        blueprint = Blueprint("users")
        blueprint.drop_index("foo")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual("ALTER TABLE `users` DROP INDEX foo", statements[0])
示例#29
0
    def test_rename_table(self):
        blueprint = Blueprint("users")
        blueprint.rename("foo")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual("RENAME TABLE `users` TO `foo`", statements[0])
示例#30
0
    def test_drop_primary(self):
        blueprint = Blueprint('users')
        blueprint.drop_primary('foo')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` DROP PRIMARY KEY', statements[0])
示例#31
0
    def test_drop_column(self):
        blueprint = Blueprint("users")
        blueprint.drop_column("foo")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual("ALTER TABLE `users` DROP `foo`", statements[0])

        blueprint = Blueprint("users")
        blueprint.drop_column("foo", "bar")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual("ALTER TABLE `users` DROP `foo`, DROP `bar`",
                         statements[0])
示例#32
0
    def test_drop_table(self):
        blueprint = Blueprint('users')
        blueprint.drop()
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('DROP TABLE "users"', statements[0])
示例#33
0
    def test_drop_column(self):
        blueprint = Blueprint('users')
        blueprint.drop_column('foo')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` DROP `foo`', statements[0])

        blueprint = Blueprint('users')
        blueprint.drop_column('foo', 'bar')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` DROP `foo`, DROP `bar`',
                         statements[0])
示例#34
0
    def test_adding_time(self):
        blueprint = Blueprint("users")
        blueprint.time("foo")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual("ALTER TABLE `users` ADD `foo` TIME NOT NULL",
                         statements[0])
示例#35
0
    def test_adding_index(self):
        blueprint = Blueprint("users")
        blueprint.index(["foo", "bar"], "baz")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual("ALTER TABLE `users` ADD INDEX baz(`foo`, `bar`)",
                         statements[0])
示例#36
0
    def test_adding_small_integer(self):
        blueprint = Blueprint("users")
        blueprint.integer("foo")
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" INTEGER NOT NULL', statements[0]
        )
示例#37
0
    def test_adding_timestamp_mysql_lt_564(self):
        blueprint = Blueprint("users")
        blueprint.timestamp("foo")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar((5, 6, 0, "")))

        self.assertEqual(1, len(statements))
        self.assertEqual("ALTER TABLE `users` ADD `foo` TIMESTAMP NOT NULL",
                         statements[0])
示例#38
0
    def test_adding_enum(self):
        blueprint = Blueprint("users")
        blueprint.enum("foo", ["bar", "baz"])
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" VARCHAR NOT NULL', statements[0]
        )
示例#39
0
    def test_adding_double(self):
        blueprint = Blueprint("users")
        blueprint.double("foo", 15, 8)
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" FLOAT NOT NULL', statements[0]
        )
示例#40
0
    def test_adding_binary(self):
        blueprint = Blueprint('users')
        blueprint.binary('foo')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` ADD `foo` BLOB NOT NULL',
                         statements[0])
示例#41
0
    def test_drop_primary(self):
        blueprint = Blueprint('users')
        blueprint.drop_primary('foo')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" DROP CONSTRAINT users_pkey',
                         statements[0])
示例#42
0
    def test_adding_timestamp_mysql_gte_564(self):
        blueprint = Blueprint('users')
        blueprint.timestamp('foo')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar((5, 6, 4, '')))

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` ADD `foo` TIMESTAMP(6) NOT NULL',
                         statements[0])
示例#43
0
    def test_adding_float(self):
        blueprint = Blueprint('users')
        blueprint.float('foo', 5, 2)
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` ADD `foo` DOUBLE(5, 2) NOT NULL',
                         statements[0])
示例#44
0
    def test_adding_index(self):
        blueprint = Blueprint('users')
        blueprint.index(['foo', 'bar'], 'baz')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` ADD INDEX baz(`foo`, `bar`)',
                         statements[0])
示例#45
0
    def test_adding_unique_key(self):
        blueprint = Blueprint('users')
        blueprint.unique('foo', 'bar')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` ADD UNIQUE bar(`foo`)',
                         statements[0])
示例#46
0
    def test_adding_primary_key(self):
        blueprint = Blueprint('users')
        blueprint.primary('foo', 'bar')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE `users` ADD PRIMARY KEY bar(`foo`)',
                         statements[0])
    def test_drop_unique(self):
        blueprint = Blueprint("users")
        blueprint.drop_unique("foo")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" DROP CONSTRAINT foo',
                         statements[0])
    def test_adding_binary(self):
        blueprint = Blueprint("users")
        blueprint.binary("foo")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD COLUMN "foo" BYTEA NOT NULL',
                         statements[0])
示例#49
0
    def test_adding_decimal(self):
        blueprint = Blueprint("users")
        blueprint.decimal("foo", 5, 2)
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" NUMERIC NOT NULL', statements[0]
        )
    def test_adding_primary_key(self):
        blueprint = Blueprint("users")
        blueprint.primary("foo")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD PRIMARY KEY ("foo")',
                         statements[0])
    def test_adding_index(self):
        blueprint = Blueprint("users")
        blueprint.index(["foo", "bar"], "baz")
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('CREATE INDEX baz ON "users" ("foo", "bar")',
                         statements[0])
示例#52
0
    def test_adding_time(self):
        blueprint = Blueprint('users')
        blueprint.time('foo')
        statements = blueprint.to_sql(self.get_connection(),
                                      self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual('ALTER TABLE "users" ADD COLUMN "foo" TIME NOT NULL',
                         statements[0])
示例#53
0
    def test_adding_unique_key(self):
        blueprint = Blueprint('users')
        blueprint.unique('foo', 'bar')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'CREATE UNIQUE INDEX bar ON "users" ("foo")',
            statements[0]
        )
示例#54
0
    def test_adding_big_incrementing_id(self):
        blueprint = Blueprint('users')
        blueprint.big_increments('id')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "id" INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT',
            statements[0]
        )
示例#55
0
    def test_adding_timestamp_with_current(self):
        blueprint = Blueprint('users')
        blueprint.timestamp('foo').use_current()
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT CURRENT_TIMESTAMP(0) NOT NULL',
            statements[0]
        )
示例#56
0
    def test_adding_small_integer(self):
        blueprint = Blueprint('users')
        blueprint.integer('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" INTEGER NOT NULL',
            statements[0]
        )
示例#57
0
    def test_adding_timestamp(self):
        blueprint = Blueprint('users')
        blueprint.timestamp('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" DATETIME NOT NULL',
            statements[0]
        )
示例#58
0
    def test_adding_enum(self):
        blueprint = Blueprint('users')
        blueprint.enum('foo', ['bar', 'baz'])
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" VARCHAR NOT NULL',
            statements[0]
        )
示例#59
0
    def test_adding_boolean(self):
        blueprint = Blueprint('users')
        blueprint.boolean('foo')
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" TINYINT NOT NULL',
            statements[0]
        )
示例#60
0
    def test_adding_double(self):
        blueprint = Blueprint('users')
        blueprint.double('foo', 15, 8)
        statements = blueprint.to_sql(self.get_connection(), self.get_grammar())

        self.assertEqual(1, len(statements))
        self.assertEqual(
            'ALTER TABLE "users" ADD COLUMN "foo" FLOAT NOT NULL',
            statements[0]
        )