Skip to content

Commit e55271f

Browse files
ok
1 parent 1be61b4 commit e55271f

File tree

8 files changed

+32
-82
lines changed

8 files changed

+32
-82
lines changed

crates/pgt_schema_cache/src/columns.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -126,7 +126,7 @@ mod tests {
126126
let public_schema_columns = cache
127127
.columns
128128
.iter()
129-
.filter(|c| c.schema_name.as_str() == "public")
129+
.filter(|c| c.schema_name.as_str() == "public" && !c.table_name.contains("migrations"))
130130
.count();
131131

132132
assert_eq!(public_schema_columns, 4);

crates/pgt_schema_cache/src/policies.rs

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -80,28 +80,13 @@ impl SchemaCacheItem for Policy {
8080

8181
#[cfg(test)]
8282
mod tests {
83-
use pgt_test_utils::test_database::{RoleWithArgs, get_new_test_db};
8483

85-
use crate::{SchemaCache, policies::PolicyCommand};
86-
87-
#[tokio::test]
88-
async fn loads_policies() {
89-
let mut test_db = get_new_test_db().await;
84+
use sqlx::{Executor, PgPool};
9085

91-
test_db
92-
.setup_roles(vec![
93-
RoleWithArgs {
94-
role: "admin".into(),
95-
args: vec![],
96-
},
97-
RoleWithArgs {
98-
role: "owner".into(),
99-
args: vec![],
100-
},
101-
])
102-
.await
103-
.expect("Unable to setup admin roles");
86+
use crate::{SchemaCache, policies::PolicyCommand};
10487

88+
#[sqlx::test(migrator = "pgt_test_utils::MIGRATIONS")]
89+
async fn loads_policies(test_db: PgPool) {
10590
let setup = r#"
10691
create table public.users (
10792
id serial primary key,

crates/pgt_schema_cache/src/roles.rs

Lines changed: 4 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -21,36 +21,12 @@ impl SchemaCacheItem for Role {
2121

2222
#[cfg(test)]
2323
mod tests {
24-
use crate::SchemaCache;
25-
use pgt_test_utils::test_database::{RoleWithArgs, get_new_test_db};
26-
27-
#[tokio::test]
28-
async fn loads_roles() {
29-
let mut test_db = get_new_test_db().await;
24+
use sqlx::PgPool;
3025

31-
test_db
32-
.setup_roles(vec![
33-
RoleWithArgs {
34-
role: "test_super".into(),
35-
args: vec![
36-
"superuser".into(),
37-
"createdb".into(),
38-
"login".into(),
39-
"bypassrls".into(),
40-
],
41-
},
42-
RoleWithArgs {
43-
role: "test_nologin".into(),
44-
args: vec![],
45-
},
46-
RoleWithArgs {
47-
role: "test_login".into(),
48-
args: vec!["login".into()],
49-
},
50-
])
51-
.await
52-
.expect("Unable to set up roles.");
26+
use crate::SchemaCache;
5327

28+
#[sqlx::test(migrator = "pgt_test_utils::MIGRATIONS")]
29+
async fn loads_roles(test_db: PgPool) {
5430
let cache = SchemaCache::load(&test_db)
5531
.await
5632
.expect("Failed to load Schema Cache");

crates/pgt_schema_cache/src/schema_cache.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -93,14 +93,12 @@ pub trait SchemaCacheItem {
9393

9494
#[cfg(test)]
9595
mod tests {
96-
use pgt_test_utils::test_database::get_new_test_db;
96+
use sqlx::PgPool;
9797

9898
use crate::SchemaCache;
9999

100-
#[tokio::test]
101-
async fn it_loads() {
102-
let test_db = get_new_test_db().await;
103-
100+
#[sqlx::test(migrator = "pgt_test_utils::MIGRATIONS")]
101+
async fn it_loads(test_db: PgPool) {
104102
SchemaCache::load(&test_db)
105103
.await
106104
.expect("Couldnt' load Schema Cache");

crates/pgt_schema_cache/src/tables.rs

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -79,13 +79,12 @@ impl SchemaCacheItem for Table {
7979

8080
#[cfg(test)]
8181
mod tests {
82-
use crate::{SchemaCache, tables::TableKind};
83-
use pgt_test_utils::test_database::get_new_test_db;
82+
use sqlx::{Executor, PgPool};
8483

85-
#[tokio::test]
86-
async fn includes_views_in_query() {
87-
let test_db = get_new_test_db().await;
84+
use crate::{SchemaCache, tables::TableKind};
8885

86+
#[sqlx::test(migrator = "pgt_test_utils::MIGRATIONS")]
87+
async fn includes_views_in_query(test_db: PgPool) {
8988
let setup = r#"
9089
create table public.base_table (
9190
id serial primary key,
@@ -115,10 +114,8 @@ mod tests {
115114
assert_eq!(view.schema, "public");
116115
}
117116

118-
#[tokio::test]
119-
async fn includes_materialized_views_in_query() {
120-
let test_db = get_new_test_db().await;
121-
117+
#[sqlx::test(migrator = "pgt_test_utils::MIGRATIONS")]
118+
async fn includes_materialized_views_in_query(test_db: PgPool) {
122119
let setup = r#"
123120
create table public.base_table (
124121
id serial primary key,

crates/pgt_schema_cache/src/triggers.rs

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -126,17 +126,16 @@ impl SchemaCacheItem for Trigger {
126126

127127
#[cfg(test)]
128128
mod tests {
129-
use pgt_test_utils::test_database::get_new_test_db;
129+
130+
use sqlx::{Executor, PgPool};
130131

131132
use crate::{
132133
SchemaCache,
133134
triggers::{TriggerAffected, TriggerEvent, TriggerTiming},
134135
};
135136

136-
#[tokio::test]
137-
async fn loads_triggers() {
138-
let test_db = get_new_test_db().await;
139-
137+
#[sqlx::test(migrator = "pgt_test_utils::MIGRATIONS")]
138+
async fn loads_triggers(test_db: PgPool) {
140139
let setup = r#"
141140
create table public.users (
142141
id serial primary key,
@@ -218,10 +217,8 @@ mod tests {
218217
assert_eq!(delete_trigger.proc_name, "log_user_insert");
219218
}
220219

221-
#[tokio::test]
222-
async fn loads_instead_and_truncate_triggers() {
223-
let test_db = get_new_test_db().await;
224-
220+
#[sqlx::test(migrator = "pgt_test_utils::MIGRATIONS")]
221+
async fn loads_instead_and_truncate_triggers(test_db: PgPool) {
225222
let setup = r#"
226223
create table public.docs (
227224
id serial primary key,

crates/pgt_typecheck/src/typed_identifier.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -231,10 +231,10 @@ fn resolve_type<'a>(
231231

232232
#[cfg(test)]
233233
mod tests {
234-
use pgt_test_utils::test_database::get_new_test_db;
234+
use sqlx::{Executor, PgPool};
235235

236-
#[tokio::test]
237-
async fn test_apply_identifiers() {
236+
#[sqlx::test(migrator = "pgt_test_utils::MIGRATIONS")]
237+
async fn test_apply_identifiers(test_db: PgPool) {
238238
let input = "select v_test + fn_name.custom_type.v_test2 + $3 + custom_type.v_test3 + fn_name.v_test2 + enum_type";
239239

240240
let identifiers = vec![
@@ -294,8 +294,6 @@ mod tests {
294294
},
295295
];
296296

297-
let test_db = get_new_test_db().await;
298-
299297
let setup = r#"
300298
CREATE TYPE "public"."custom_type" AS (
301299
v_test2 integer,

crates/pgt_typecheck/tests/diagnostics.rs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,10 @@ use pgt_console::{
33
markup,
44
};
55
use pgt_diagnostics::PrintDiagnostic;
6-
use pgt_test_utils::test_database::get_new_test_db;
76
use pgt_typecheck::{TypecheckParams, check_sql};
7+
use sqlx::{Executor, PgPool};
88

9-
async fn test(name: &str, query: &str, setup: Option<&str>) {
10-
let test_db = get_new_test_db().await;
11-
9+
async fn test(name: &str, query: &str, setup: Option<&str>, test_db: &PgPool) {
1210
if let Some(setup) = setup {
1311
test_db
1412
.execute(setup)
@@ -57,8 +55,8 @@ async fn test(name: &str, query: &str, setup: Option<&str>) {
5755
});
5856
}
5957

60-
#[tokio::test]
61-
async fn invalid_column() {
58+
#[sqlx::test(migrator = "pgt_test_utils::MIGRATIONS")]
59+
async fn invalid_column(pool: PgPool) {
6260
test(
6361
"invalid_column",
6462
"select id, unknown from contacts;",
@@ -72,6 +70,7 @@ async fn invalid_column() {
7270
);
7371
"#,
7472
),
73+
&pool,
7574
)
7675
.await;
7776
}

0 commit comments

Comments
 (0)