feat: define input adapter to trigger refreshing OAuthAccessToken
This commit is contained in:
parent
49dc998735
commit
7c1a62c549
1
src/auth/application/port/input/forge/mod.rs
Normal file
1
src/auth/application/port/input/forge/mod.rs
Normal file
|
@ -0,0 +1 @@
|
|||
pub mod refresh_access_token;
|
|
@ -0,0 +1,38 @@
|
|||
use std::sync::Arc;
|
||||
|
||||
use mockall::predicate::*;
|
||||
use mockall::*;
|
||||
|
||||
use crate::auth::application::port::out::forge::refresh_access_token::RefreshAccessToken;
|
||||
use crate::auth::application::services::refresh_access_token::{command::*, errors::*};
|
||||
|
||||
#[automock]
|
||||
#[async_trait::async_trait]
|
||||
pub trait RefreshAccessTokenInputPort: Send + Sync {
|
||||
async fn refresh_access_token(
|
||||
&self,
|
||||
refresh_access_token_adapter: Arc<dyn RefreshAccessToken>,
|
||||
cmd: RefreshAccessTokenCommand,
|
||||
) -> RefreshAccessTokenServiceResult<()>;
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
pub mod tests {
|
||||
use super::*;
|
||||
|
||||
pub fn mock_refresh_access_token_usecase_factory(
|
||||
times: Option<usize>,
|
||||
) -> Arc<dyn RefreshAccessTokenInputPort> {
|
||||
let mut m = MockRefreshAccessTokenInputPort::new();
|
||||
if let Some(times) = times {
|
||||
m.expect_refresh_access_token()
|
||||
.times(times)
|
||||
.returning(move |_, _| Ok(()));
|
||||
} else {
|
||||
m.expect_refresh_access_token()
|
||||
.returning(move |_, _| Ok(()));
|
||||
}
|
||||
|
||||
Arc::new(m)
|
||||
}
|
||||
}
|
|
@ -1 +1,2 @@
|
|||
pub mod forge;
|
||||
pub mod ui;
|
||||
|
|
Loading…
Reference in a new issue