mirror of
https://github.com/actix/actix-extras.git
synced 2025-06-26 10:27:42 +02:00
Add the ability to change the keys (#348)
* feat: add the ability to change the session key store in redis * feat: change everywhere the constants are used * refactor: add formatting with cargo fmt --------- Co-authored-by: Dany Gagnon <danygagnon@Danys-MacBook-Pro.local>
This commit is contained in:
@ -28,6 +28,33 @@ async fn login_works() {
|
||||
assert!(response.status().is_success());
|
||||
}
|
||||
|
||||
#[actix_web::test]
|
||||
async fn custom_keys_work_as_expected() {
|
||||
let custom_id_key = "custom.user_id";
|
||||
let custom_last_visited_key = "custom.last_visited_at";
|
||||
let custom_logged_in_key = "custom.logged_in_at";
|
||||
|
||||
let app = TestApp::spawn_with_config(
|
||||
IdentityMiddleware::builder()
|
||||
.id_key(custom_id_key)
|
||||
.last_visit_unix_timestamp_key(custom_last_visited_key)
|
||||
.login_unix_timestamp_key(custom_logged_in_key),
|
||||
);
|
||||
let user_id = user_id();
|
||||
|
||||
let body = app.post_login(user_id.clone()).await;
|
||||
assert_eq!(body.user_id, Some(user_id.clone()));
|
||||
|
||||
let response = app.get_identity_required().await;
|
||||
assert!(response.status().is_success());
|
||||
|
||||
let response = app.post_logout().await;
|
||||
assert!(response.status().is_success());
|
||||
|
||||
let response = app.get_identity_required().await;
|
||||
assert_eq!(response.status(), StatusCode::UNAUTHORIZED);
|
||||
}
|
||||
|
||||
#[actix_web::test]
|
||||
async fn logging_in_again_replaces_the_current_identity() {
|
||||
let app = TestApp::spawn();
|
||||
|
Reference in New Issue
Block a user