feat(transcription): person @mention sidecar + rename propagation (PR-A backend, #362) #366
@@ -122,6 +122,27 @@ class PersonMentionPropagationListenerTest {
|
|||||||
org.assertj.core.groups.Tuple.tuple(hansId, "Hans Schmidt"));
|
org.assertj.core.groups.Tuple.tuple(hansId, "Hans Schmidt"));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void rewritesAllOccurrences_whenSameMentionAppearsTwiceInBlock() {
|
||||||
|
UUID personId = savedPersonId("Auguste", "Raddatz");
|
||||||
|
TranscriptionBlock saved = saveBlock(
|
||||||
|
"Heute hat @Auguste Raddatz geschrieben, dann hat @Auguste Raddatz nochmal geschrieben.",
|
||||||
|
List.of(new PersonMention(personId, "Auguste Raddatz")));
|
||||||
|
em.clear();
|
||||||
|
|
||||||
|
listener.onPersonDisplayNameChanged(
|
||||||
|
new PersonDisplayNameChangedEvent(personId, "Auguste Raddatz", "Augusta Raddatz"));
|
||||||
|
blockRepository.flush();
|
||||||
|
em.clear();
|
||||||
|
|
||||||
|
TranscriptionBlock reloaded = blockRepository.findById(saved.getId()).orElseThrow();
|
||||||
|
assertThat(reloaded.getText())
|
||||||
|
.isEqualTo("Heute hat @Augusta Raddatz geschrieben, dann hat @Augusta Raddatz nochmal geschrieben.");
|
||||||
|
assertThat(reloaded.getMentionedPersons())
|
||||||
|
.extracting(PersonMention::getDisplayName)
|
||||||
|
.containsExactly("Augusta Raddatz");
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
void leavesUnrelatedBlockUntouched_whenNoSidecarReferencesPerson() {
|
void leavesUnrelatedBlockUntouched_whenNoSidecarReferencesPerson() {
|
||||||
UUID personId = savedPersonId("Auguste", "Raddatz");
|
UUID personId = savedPersonId("Auguste", "Raddatz");
|
||||||
|
|||||||
Reference in New Issue
Block a user