mod common;
use insta::assert_snapshot;
use pqb::index::DropIndex;
use pqb::schema::DropSchema;
use pqb::table::DropTable;
use crate::common::ValidateSql;
#[test]
fn drop_index_sql() {
assert_snapshot!(
DropIndex::new()
.index(("public", "idx_users_email"))
.if_exists()
.concurrently()
.cascade()
.to_sql()
.validate(),
@r#"DROP INDEX CONCURRENTLY IF EXISTS "public"."idx_users_email" CASCADE"#
);
}
#[test]
fn drop_table_sql() {
assert_snapshot!(
DropTable::new()
.tables([("public", "users"), ("public", "accounts")])
.if_exists()
.restrict()
.to_sql()
.validate(),
@r#"DROP TABLE IF EXISTS "public"."users", "public"."accounts" RESTRICT"#
);
}
#[test]
fn drop_schema_sql() {
assert_snapshot!(
DropSchema::new()
.schemas(["public", "analytics"])
.if_exists()
.cascade()
.to_sql()
.validate(),
@r#"DROP SCHEMA IF EXISTS "public", "analytics" CASCADE"#
);
}