feature/spoiler-flag (#25)
Some checks failed
CI / Check / Test (push) Has been cancelled

Reviewed-on: #25
This commit was merged in pull request #25.
This commit is contained in:
2026-10-25 18:52:11 +00:00
parent 9dd9df1f73
commit 4f3d99ec8e
66 changed files with 502 additions and 168 deletions

View File

@@ -12,6 +12,7 @@ fn make_review(watch_medium: Option<WatchMedium>) -> Review {
Some(Comment::new("great film".into()).unwrap()),
NaiveDateTime::parse_from_str("2024-06-15 20:00:00", "%Y-%m-%d %H:%M:%S").unwrap(),
watch_medium,
false,
)
.unwrap()
}
@@ -71,6 +72,23 @@ fn apply_edit_clears_watch_medium() {
assert_eq!(edited.watch_medium(), None);
}
#[test]
fn apply_edit_toggles_spoilers() {
let original = make_review(None);
let flag_on = original.apply_edit(ReviewEdit {
spoilers: Some(true),
..Default::default()
});
assert!(flag_on.spoilers());
let flag_off = flag_on.apply_edit(ReviewEdit {
spoilers: Some(false),
..Default::default()
});
assert!(!flag_off.spoilers());
let untouched = original.apply_edit(ReviewEdit::default());
assert!(!untouched.spoilers());
}
#[test]
fn apply_edit_no_changes_preserves_all() {
let original = make_review(Some(WatchMedium::TV));