From dc7997beba8b24d55f43cd39e2975778e1fc219a Mon Sep 17 00:00:00 2001 From: Cyborus Date: Wed, 20 Dec 2023 13:51:51 -0500 Subject: [PATCH] add password auth testing --- tests/ci_test.rs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/tests/ci_test.rs b/tests/ci_test.rs index e5cb1c2..3d98f71 100644 --- a/tests/ci_test.rs +++ b/tests/ci_test.rs @@ -5,7 +5,7 @@ use forgejo_api::Forgejo; async fn ci() -> eyre::Result<()> { let url = url::Url::parse(&std::env::var("FORGEJO_API_CI_INSTANCE_URL")?)?; let token = std::env::var("FORGEJO_API_CI_TOKEN")?; - let api = Forgejo::new(&token, url)?; + let api = Forgejo::new(forgejo_api::Auth::Token(&token), url)?; let mut results = Vec::new(); @@ -54,6 +54,22 @@ async fn user(api: &forgejo_api::Forgejo) -> eyre::Result<()> { let followers = api.get_followers("TestingAdmin").await?; ensure!(followers == Some(Vec::new()), "follower list not empty"); + let url = url::Url::parse(&std::env::var("FORGEJO_API_CI_INSTANCE_URL")?)?; + let password_api = Forgejo::new( + forgejo_api::Auth::Password { + username: "TestingAdmin", + password: "password", + mfa: None, + }, + url, + ) + .wrap_err("failed to log in using username and password")?; + + ensure!( + api.myself().await? == password_api.myself().await?, + "users not equal comparing token-auth and pass-auth" + ); + Ok(()) }