Skip to content

Commit e0e05c5

Browse files
committed
Revert "refactor: update keycloak_client to use upstream version"
This reverts commit d9e3f54. Signed-off-by: Jan Zachmann <50990105+JanZachmann@users.noreply.github.com>
1 parent d9e3f54 commit e0e05c5

File tree

3 files changed

+15
-10
lines changed

3 files changed

+15
-10
lines changed

src/common.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@ pub fn create_frontend_config_file() -> Result<()> {
9898
.context("failed to create frontend config file")?;
9999

100100
config_file
101-
.write_all(keycloak_client::config().as_bytes())
101+
.write_all(keycloak_client::KeycloakProvider::config().as_bytes())
102102
.context("failed to write frontend config file")
103103
}
104104

src/keycloak_client.rs

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,9 @@ use base64::{Engine, prelude::BASE64_STANDARD};
33
use jwt_simple::prelude::{RS256PublicKey, RSAPublicKeyLike};
44
#[cfg(feature = "mock")]
55
use mockall::automock;
6+
use reqwest::Client;
67
use serde::{Deserialize, Serialize};
8+
use trait_variant::make;
79

810
#[derive(Debug, Deserialize, Serialize, Clone)]
911
pub struct TokenClaims {
@@ -25,9 +27,9 @@ macro_rules! keycloak_url {
2527
}};
2628
}
2729

30+
#[make(Send + Sync)]
2831
#[cfg_attr(feature = "mock", automock)]
29-
#[allow(async_fn_in_trait)]
30-
pub trait SingleSignOnProvider: Send + Sync {
32+
pub trait SingleSignOnProvider {
3133
async fn verify_token(&self, token: &str) -> anyhow::Result<TokenClaims>;
3234
}
3335

@@ -39,12 +41,17 @@ pub struct KeycloakProvider {
3941
impl Default for KeycloakProvider {
4042
fn default() -> Self {
4143
Self {
42-
client: reqwest::Client::new(),
44+
client: Client::new(),
4345
}
4446
}
4547
}
4648

4749
impl KeycloakProvider {
50+
pub fn config() -> String {
51+
let keycloak_url = &keycloak_url!();
52+
format!("window.__APP_CONFIG__ = {{KEYCLOAK_URL:\"{keycloak_url}\"}};")
53+
}
54+
4855
async fn realm_public_key(&self) -> Result<RS256PublicKey> {
4956
let resp = self
5057
.client
@@ -71,8 +78,3 @@ impl SingleSignOnProvider for KeycloakProvider {
7178
Ok(claims.custom)
7279
}
7380
}
74-
75-
pub fn config() -> String {
76-
let keycloak_url = &keycloak_url!();
77-
format!("window.__APP_CONFIG__ = {{KEYCLOAK_URL:\"{keycloak_url}\"}};")
78-
}

tests/validate_portal_token.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,10 @@ fn make_api(
4444
let mut single_sign_on_provider_mock = SingleSignOnProvider::default();
4545
single_sign_on_provider_mock
4646
.expect_verify_token()
47-
.returning(move |_| Ok(claims.clone()));
47+
.returning(move |_| {
48+
let claims = claims.clone();
49+
Box::pin(async move { Ok(claims) })
50+
});
4851

4952
Api {
5053
service_client: device_service_client_mock,

0 commit comments

Comments
 (0)