fix: honest review update rollback test, goal delete NotFound fake, read before write
This commit is contained in:
@@ -118,11 +118,20 @@ async fn a_failing_enqueue_after_the_review_update_rolls_the_update_back() {
|
||||
let repo = SqliteReviewRepository::new(pool.clone());
|
||||
repo.save_review(&review, &[]).await.unwrap();
|
||||
fail_event_inserts(&pool).await;
|
||||
let event = updated(&review);
|
||||
let edited = review.apply_edit(domain::models::ReviewEdit {
|
||||
rating: Some(domain::value_objects::Rating::new(1).unwrap()),
|
||||
..Default::default()
|
||||
});
|
||||
let event = updated(&edited);
|
||||
|
||||
let result = repo.update_review(&review, &[event]).await;
|
||||
let result = repo.update_review(&edited, &[event]).await;
|
||||
|
||||
assert!(result.is_err());
|
||||
let persisted: i64 = sqlx::query_scalar("SELECT rating FROM reviews")
|
||||
.fetch_one(&pool)
|
||||
.await
|
||||
.unwrap();
|
||||
assert_eq!(persisted, 4, "rating update rolled back");
|
||||
assert_eq!(count(&pool, "event_queue").await, 0);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user