diff --git a/crates/collab/src/api.rs b/crates/collab/src/api.rs index df5071b90f04ac8a5c8d24868f2d07a040e931b0..7fca27c5c2b9580b7ef6546e4188c0aac7f73e3c 100644 --- a/crates/collab/src/api.rs +++ b/crates/collab/src/api.rs @@ -97,7 +97,7 @@ impl std::fmt::Display for SystemIdHeader { pub fn routes(rpc_server: Arc) -> Router<(), Body> { Router::new() - .route("/user", get(get_authenticated_user)) + .route("/user", get(update_or_create_authenticated_user)) .route("/users/look_up", get(look_up_user)) .route("/users/:id/access_tokens", post(create_access_token)) .route("/rpc_server_snapshot", get(get_rpc_server_snapshot)) @@ -157,7 +157,7 @@ struct AuthenticatedUserResponse { feature_flags: Vec, } -async fn get_authenticated_user( +async fn update_or_create_authenticated_user( Query(params): Query, Extension(app): Extension>, ) -> Result> { @@ -165,7 +165,7 @@ async fn get_authenticated_user( let user = app .db - .get_or_create_user_by_github_account( + .update_or_create_user_by_github_account( ¶ms.github_login, params.github_user_id, params.github_email.as_deref(), diff --git a/crates/collab/src/db/queries/contributors.rs b/crates/collab/src/db/queries/contributors.rs index 673b12d62abc23e23a323ee2f53ba8d9241b3cf8..76e5267d913c5056ae9037cbbc1417b249119493 100644 --- a/crates/collab/src/db/queries/contributors.rs +++ b/crates/collab/src/db/queries/contributors.rs @@ -71,7 +71,7 @@ impl Database { ) -> Result<()> { self.weak_transaction(|tx| async move { let user = self - .get_or_create_user_by_github_account_tx( + .update_or_create_user_by_github_account_tx( github_login, github_user_id, github_email, diff --git a/crates/collab/src/db/queries/users.rs b/crates/collab/src/db/queries/users.rs index b1c321383e66617969ea05854d29e4a41ae91493..12587c0fafb75d6e9afcb5a4270f7513fedc61ab 100644 --- a/crates/collab/src/db/queries/users.rs +++ b/crates/collab/src/db/queries/users.rs @@ -111,7 +111,7 @@ impl Database { .await } - pub async fn get_or_create_user_by_github_account( + pub async fn update_or_create_user_by_github_account( &self, github_login: &str, github_user_id: i32, @@ -121,7 +121,7 @@ impl Database { initial_channel_id: Option, ) -> Result { self.transaction(|tx| async move { - self.get_or_create_user_by_github_account_tx( + self.update_or_create_user_by_github_account_tx( github_login, github_user_id, github_email, @@ -135,7 +135,7 @@ impl Database { .await } - pub async fn get_or_create_user_by_github_account_tx( + pub async fn update_or_create_user_by_github_account_tx( &self, github_login: &str, github_user_id: i32, diff --git a/crates/collab/src/db/tests/db_tests.rs b/crates/collab/src/db/tests/db_tests.rs index 3fa69f3bf6d674c1a31c000840c5eee75b415601..07ab1e62500c8dcddc0ceaeac5cdc9992a6294f8 100644 --- a/crates/collab/src/db/tests/db_tests.rs +++ b/crates/collab/src/db/tests/db_tests.rs @@ -72,12 +72,12 @@ async fn test_get_users(db: &Arc) { } test_both_dbs!( - test_get_or_create_user_by_github_account, - test_get_or_create_user_by_github_account_postgres, - test_get_or_create_user_by_github_account_sqlite + test_update_or_create_user_by_github_account, + test_update_or_create_user_by_github_account_postgres, + test_update_or_create_user_by_github_account_sqlite ); -async fn test_get_or_create_user_by_github_account(db: &Arc) { +async fn test_update_or_create_user_by_github_account(db: &Arc) { db.create_user( "user1@example.com", None, @@ -104,7 +104,14 @@ async fn test_get_or_create_user_by_github_account(db: &Arc) { .user_id; let user = db - .get_or_create_user_by_github_account("the-new-login2", 102, None, None, Utc::now(), None) + .update_or_create_user_by_github_account( + "the-new-login2", + 102, + None, + None, + Utc::now(), + None, + ) .await .unwrap(); assert_eq!(user.id, user_id2); @@ -112,7 +119,7 @@ async fn test_get_or_create_user_by_github_account(db: &Arc) { assert_eq!(user.github_user_id, 102); let user = db - .get_or_create_user_by_github_account( + .update_or_create_user_by_github_account( "login3", 103, Some("user3@example.com"), diff --git a/crates/collab/src/seed.rs b/crates/collab/src/seed.rs index e5741b733213568d7b71e286a7316b72200a4854..2d070b30abada79dc177b2b600d9ecc40aa472e1 100644 --- a/crates/collab/src/seed.rs +++ b/crates/collab/src/seed.rs @@ -127,7 +127,7 @@ pub async fn seed(config: &Config, db: &Database, force: bool) -> anyhow::Result log::info!("Seeding {:?} from GitHub", github_user.login); let user = db - .get_or_create_user_by_github_account( + .update_or_create_user_by_github_account( &github_user.login, github_user.id, github_user.email.as_deref(), diff --git a/crates/collab/src/tests/channel_guest_tests.rs b/crates/collab/src/tests/channel_guest_tests.rs index 6f7a6228b21b2a22e6e16003af527105640e4da4..f5051ba876438b6872b3826c1c75258bde990ed8 100644 --- a/crates/collab/src/tests/channel_guest_tests.rs +++ b/crates/collab/src/tests/channel_guest_tests.rs @@ -180,7 +180,7 @@ async fn test_channel_requires_zed_cla(cx_a: &mut TestAppContext, cx_b: &mut Tes server .app_state .db - .get_or_create_user_by_github_account("user_b", 100, None, None, Utc::now(), None) + .update_or_create_user_by_github_account("user_b", 100, None, None, Utc::now(), None) .await .unwrap(); diff --git a/crates/collab/src/user_backfiller.rs b/crates/collab/src/user_backfiller.rs index bac8eec5fa7ebc9980ed68bd764b2ee439300157..71b99a3d4c62560597ce47de926816e741507e44 100644 --- a/crates/collab/src/user_backfiller.rs +++ b/crates/collab/src/user_backfiller.rs @@ -82,7 +82,7 @@ impl UserBackfiller { { Ok(github_user) => { self.db - .get_or_create_user_by_github_account( + .update_or_create_user_by_github_account( &user.github_login, github_user.id, user.email_address.as_deref(),