test: cascading in-memory store
This commit is contained in:
@@ -1,8 +1,7 @@
|
||||
use std::sync::Arc;
|
||||
|
||||
use domain::testing::{
|
||||
InMemoryGoalRepository, InMemorySocialRepository, InMemoryWrapUpRepository,
|
||||
InMemoryWrapUpStatsQuery, NoopFederationAdminQuery,
|
||||
InMemoryStore, InMemoryWrapUpRepository, InMemoryWrapUpStatsQuery, NoopFederationAdminQuery,
|
||||
};
|
||||
use domain::{
|
||||
ports::{
|
||||
@@ -17,11 +16,7 @@ use domain::{
|
||||
testing::{
|
||||
FakeAuthService, FakeDiaryQuery, FakeDocumentParser, FakeMetadataClient,
|
||||
FakePasswordHasher, FakePersonQuery, FakePosterFetcher, FakeSearchCommand, FakeSearchPort,
|
||||
FakeStatsRepository, InMemoryImportProfileRepository, InMemoryImportSessionRepository,
|
||||
InMemoryMovieProfileRepository, InMemoryMovieRepository, InMemoryProfileFieldsRepo,
|
||||
InMemoryRefreshSessionRepository, InMemoryReviewRepository, InMemoryUserRepository,
|
||||
InMemoryUserSettingsRepository, InMemoryWatchEventRepository, InMemoryWatchlistRepository,
|
||||
InMemoryWebhookTokenRepository, NoopEventPublisher, NoopObjectStorage, PanicDiaryExporter,
|
||||
FakeStatsRepository, NoopEventPublisher, NoopObjectStorage, PanicDiaryExporter,
|
||||
PanicPersonCommand,
|
||||
},
|
||||
};
|
||||
@@ -89,14 +84,11 @@ impl Default for TestContextBuilder {
|
||||
|
||||
impl TestContextBuilder {
|
||||
pub fn new() -> Self {
|
||||
let movies = InMemoryMovieRepository::new();
|
||||
let watch_events = InMemoryWatchEventRepository::new();
|
||||
let goals = InMemoryGoalRepository::new();
|
||||
let social = InMemorySocialRepository::new();
|
||||
let store = InMemoryStore::new();
|
||||
Self {
|
||||
movie_command: Arc::clone(&movies) as _,
|
||||
movie_query: movies as _,
|
||||
review_repo: InMemoryReviewRepository::new(),
|
||||
movie_command: Arc::clone(&store) as _,
|
||||
movie_query: Arc::clone(&store) as _,
|
||||
review_repo: Arc::clone(&store) as _,
|
||||
diary_repo: FakeDiaryQuery::new(),
|
||||
diary_exporter: Arc::new(PanicDiaryExporter),
|
||||
document_parser: Arc::new(FakeDocumentParser),
|
||||
@@ -107,30 +99,30 @@ impl TestContextBuilder {
|
||||
event_publisher: NoopEventPublisher::new(),
|
||||
auth_service: Arc::new(FakeAuthService),
|
||||
password_hasher: Arc::new(FakePasswordHasher),
|
||||
user_repo: InMemoryUserRepository::new(),
|
||||
import_session_repo: InMemoryImportSessionRepository::new(),
|
||||
import_profile_repo: InMemoryImportProfileRepository::new(),
|
||||
movie_profile_repo: InMemoryMovieProfileRepository::new(),
|
||||
watchlist_repo: InMemoryWatchlistRepository::new(),
|
||||
watch_event_command: Arc::clone(&watch_events) as _,
|
||||
watch_event_query: watch_events as _,
|
||||
webhook_token_repo: InMemoryWebhookTokenRepository::new(),
|
||||
profile_fields_repo: InMemoryProfileFieldsRepo::new(),
|
||||
user_repo: Arc::clone(&store) as _,
|
||||
import_session_repo: Arc::clone(&store) as _,
|
||||
import_profile_repo: Arc::clone(&store) as _,
|
||||
movie_profile_repo: Arc::clone(&store) as _,
|
||||
watchlist_repo: Arc::clone(&store) as _,
|
||||
watch_event_command: Arc::clone(&store) as _,
|
||||
watch_event_query: Arc::clone(&store) as _,
|
||||
webhook_token_repo: Arc::clone(&store) as _,
|
||||
profile_fields_repo: Arc::clone(&store) as _,
|
||||
person_command: Arc::new(PanicPersonCommand),
|
||||
person_query: Arc::new(FakePersonQuery),
|
||||
search_port: Arc::new(FakeSearchPort),
|
||||
search_command: Arc::new(FakeSearchCommand),
|
||||
wrapup_stats: InMemoryWrapUpStatsQuery::new(),
|
||||
wrapup_repo: InMemoryWrapUpRepository::new(),
|
||||
goal_command: Arc::clone(&goals) as _,
|
||||
goal_query: goals as _,
|
||||
user_settings_repo: InMemoryUserSettingsRepository::new(),
|
||||
goal_command: Arc::clone(&store) as _,
|
||||
goal_query: Arc::clone(&store) as _,
|
||||
user_settings_repo: Arc::clone(&store) as _,
|
||||
review_logger: Arc::new(NoopReviewLogger),
|
||||
social_command: Arc::clone(&social) as _,
|
||||
social_query_unified: Arc::clone(&social) as _,
|
||||
block_query: Arc::clone(&social) as _,
|
||||
social_command: Arc::clone(&store) as _,
|
||||
social_query_unified: Arc::clone(&store) as _,
|
||||
block_query: Arc::clone(&store) as _,
|
||||
federation_admin: Arc::new(NoopFederationAdminQuery),
|
||||
refresh_session_repo: InMemoryRefreshSessionRepository::new(),
|
||||
refresh_session_repo: Arc::clone(&store) as _,
|
||||
config: AppConfig {
|
||||
allow_registration: true,
|
||||
base_url: "http://localhost:3000".into(),
|
||||
|
||||
Reference in New Issue
Block a user