Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
daf8efd
sure
juleswritescode May 27, 2025
dcf2439
so far!
juleswritescode May 27, 2025
9abf459
so far
juleswritescode May 28, 2025
8d4836e
yayyy
juleswritescode May 28, 2025
363c2ea
setup roles
juleswritescode May 28, 2025
0e1f0a8
use distinct method
juleswritescode May 28, 2025
8e4d17c
better…
juleswritescode May 28, 2025
d1d8453
sqlx prepare
juleswritescode May 29, 2025
9021bc0
ok
juleswritescode May 29, 2025
0753b50
better
juleswritescode May 29, 2025
1be61b4
ok
juleswritescode May 29, 2025
e55271f
ok
juleswritescode May 29, 2025
9cd04dd
ok
juleswritescode May 29, 2025
7e1c565
ok
juleswritescode May 29, 2025
b37adda
ok
juleswritescode May 29, 2025
cc38757
adjust test
juleswritescode May 29, 2025
a1e1a9c
ok
juleswritescode May 29, 2025
403cf82
resolve conflicts
juleswritescode Jun 2, 2025
9c3184e
ok
juleswritescode Jun 2, 2025
299e469
ok
juleswritescode Jun 3, 2025
2d37803
quicksave
juleswritescode Jun 3, 2025
027324f
reading the card…
juleswritescode Jun 3, 2025
0dd285f
wowa wiwa
juleswritescode Jun 3, 2025
f72297a
ok
juleswritescode Jun 5, 2025
578741e
lowercase…
juleswritescode Jun 5, 2025
ef5cb98
wowa wiwa
juleswritescode Jun 5, 2025
9214c91
add tests
juleswritescode Jun 5, 2025
f2b4b44
linty
juleswritescode Jun 5, 2025
b5e82ed
format
juleswritescode Jun 5, 2025
e736bd0
Merge branch 'main' of https://github.com/supabase-community/postgres…
juleswritescode Jun 5, 2025
cab8ead
Merge branch 'main' into feat/to-role
juleswritescode Jun 5, 2025
f109ece
Merge branch 'main' into feat/to-role
juleswritescode Jun 6, 2025
4beb1f2
merged
juleswritescode Jun 6, 2025
804ea17
Merge branch 'main' into feat/to-role
juleswritescode Jun 10, 2025
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
use distinct method
  • Loading branch information
juleswritescode committed May 28, 2025
commit 0e1f0a806816ba512f16a9d751430292cc92c800
39 changes: 31 additions & 8 deletions crates/pgt_test_utils/src/test_database.rs
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,13 @@ use uuid::Uuid;

static DB_ROLES: LazyLock<Mutex<HashSet<String>>> = LazyLock::new(|| Mutex::new(HashSet::new()));

fn add_roles(roles: Vec<String>) {
let mut set = DB_ROLES.lock().unwrap();
for role in roles {
set.insert(role);
}
}

#[derive(Debug)]
pub struct TestDb {
pool: PgPool,
Expand All @@ -35,13 +42,8 @@ impl TestDb {
&mut self,
roles: Vec<RoleWithArgs>,
) -> Result<PgQueryResult, sqlx::Error> {
{
let roles: Vec<String> = roles.iter().map(|r| &r.role).cloned().collect();
let mut set = DB_ROLES.lock().unwrap();
for role in roles {
set.insert(role);
}
}
let role_names: Vec<String> = roles.iter().map(|r| &r.role).cloned().collect();
add_roles(role_names);

let role_statements: Vec<String> = roles
.into_iter()
Expand Down Expand Up @@ -84,8 +86,25 @@ impl TestDb {
}
}

roles.sort();

roles
}

async fn init_roles(&self) {
let results = sqlx::query!("select rolname from pg_catalog.pg_roles;")
.fetch_all(&self.pool)
.await
.unwrap();

let roles: Vec<String> = results
.iter()
.filter_map(|r| r.rolname.as_ref())
.cloned()
.collect();

add_roles(roles);
}
}

impl Deref for TestDb {
Expand Down Expand Up @@ -134,5 +153,9 @@ pub async fn get_new_test_db() -> TestDb {
.await
.expect("Could not connect to test database");

TestDb { pool }
let db = TestDb { pool };

db.init_roles().await;

db
}