test: cascading in-memory store
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
use crate::test_support::{login_command, register_command};
|
||||
use std::sync::Arc;
|
||||
|
||||
use domain::testing::InMemoryUserRepository;
|
||||
use domain::testing::InMemoryStore;
|
||||
|
||||
use crate::{
|
||||
auth::{
|
||||
@@ -31,7 +31,7 @@ async fn setup_user(b: &TestContextBuilder, email: &str, password: &str) {
|
||||
|
||||
#[tokio::test]
|
||||
async fn test_login_valid_credentials_returns_token() {
|
||||
let users = InMemoryUserRepository::new();
|
||||
let users = InMemoryStore::new();
|
||||
let b = TestContextBuilder::new().with_users(Arc::clone(&users) as _);
|
||||
setup_user(&b, "carol@example.com", "secret123").await;
|
||||
|
||||
@@ -53,7 +53,7 @@ async fn test_login_valid_credentials_returns_token() {
|
||||
|
||||
#[tokio::test]
|
||||
async fn test_login_wrong_password_fails() {
|
||||
let users = InMemoryUserRepository::new();
|
||||
let users = InMemoryStore::new();
|
||||
let b = TestContextBuilder::new().with_users(Arc::clone(&users) as _);
|
||||
setup_user(&b, "dave@example.com", "correct_password").await;
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
use crate::test_support::{login_command, register_command};
|
||||
use std::sync::Arc;
|
||||
|
||||
use domain::testing::InMemoryUserRepository;
|
||||
use domain::testing::InMemoryStore;
|
||||
|
||||
use crate::{
|
||||
auth::{
|
||||
@@ -13,7 +13,7 @@ use crate::{
|
||||
|
||||
#[tokio::test]
|
||||
async fn logout_revokes_refresh_token() {
|
||||
let users = InMemoryUserRepository::new();
|
||||
let users = InMemoryStore::new();
|
||||
let b = TestContextBuilder::new().with_users(Arc::clone(&users) as _);
|
||||
|
||||
let reg_deps = RegisterDeps {
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
use crate::test_support::{login_command, register_command};
|
||||
use std::sync::Arc;
|
||||
|
||||
use domain::testing::InMemoryUserRepository;
|
||||
use domain::testing::InMemoryStore;
|
||||
|
||||
use crate::{
|
||||
auth::{
|
||||
@@ -38,7 +38,7 @@ async fn login_user(b: &TestContextBuilder) -> login::LoginResult {
|
||||
|
||||
#[tokio::test]
|
||||
async fn refresh_returns_new_tokens() {
|
||||
let users = InMemoryUserRepository::new();
|
||||
let users = InMemoryStore::new();
|
||||
let b = TestContextBuilder::new().with_users(Arc::clone(&users) as _);
|
||||
let login_result = login_user(&b).await;
|
||||
|
||||
@@ -58,7 +58,7 @@ async fn refresh_returns_new_tokens() {
|
||||
|
||||
#[tokio::test]
|
||||
async fn refresh_rotates_token_old_one_invalid() {
|
||||
let users = InMemoryUserRepository::new();
|
||||
let users = InMemoryStore::new();
|
||||
let b = TestContextBuilder::new().with_users(Arc::clone(&users) as _);
|
||||
let login_result = login_user(&b).await;
|
||||
let old_token = login_result.refresh_token.clone();
|
||||
@@ -76,7 +76,7 @@ async fn refresh_rotates_token_old_one_invalid() {
|
||||
|
||||
#[tokio::test]
|
||||
async fn refresh_with_new_token_works() {
|
||||
let users = InMemoryUserRepository::new();
|
||||
let users = InMemoryStore::new();
|
||||
let b = TestContextBuilder::new().with_users(Arc::clone(&users) as _);
|
||||
let login_result = login_user(&b).await;
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@ use crate::test_support::register_command;
|
||||
use std::sync::Arc;
|
||||
|
||||
use domain::ports::UserRepository;
|
||||
use domain::testing::InMemoryUserRepository;
|
||||
use domain::testing::InMemoryStore;
|
||||
use domain::value_objects::Email;
|
||||
|
||||
use crate::{
|
||||
@@ -16,7 +16,7 @@ fn cmd(email: &str) -> RegisterCommand {
|
||||
|
||||
#[tokio::test]
|
||||
async fn test_register_creates_user() {
|
||||
let users = InMemoryUserRepository::new();
|
||||
let users = InMemoryStore::new();
|
||||
let b = TestContextBuilder::new().with_users(Arc::clone(&users) as _);
|
||||
let deps = RegisterDeps {
|
||||
user: b.user_repo.clone(),
|
||||
@@ -36,7 +36,7 @@ async fn test_register_creates_user() {
|
||||
|
||||
#[tokio::test]
|
||||
async fn test_register_duplicate_email_fails() {
|
||||
let users = InMemoryUserRepository::new();
|
||||
let users = InMemoryStore::new();
|
||||
let b = TestContextBuilder::new().with_users(Arc::clone(&users) as _);
|
||||
let deps = RegisterDeps {
|
||||
user: b.user_repo.clone(),
|
||||
|
||||
Reference in New Issue
Block a user