test(TranscriptionService): verify clear() removes prior mentions before applying DTO
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -241,6 +241,35 @@ class TranscriptionServiceTest {
|
||||
.containsExactly(mention);
|
||||
}
|
||||
|
||||
@Test
|
||||
void updateBlock_clearsPriorMentions_beforeApplyingDto() {
|
||||
UUID docId = UUID.randomUUID();
|
||||
UUID blockId = UUID.randomUUID();
|
||||
|
||||
PersonMention prior = new PersonMention(UUID.randomUUID(), "Heinrich");
|
||||
PersonMention incoming = new PersonMention(UUID.randomUUID(), "Auguste");
|
||||
|
||||
TranscriptionBlock block = TranscriptionBlock.builder()
|
||||
.id(blockId).documentId(docId).text("old").build();
|
||||
block.getMentionedPersons().add(prior);
|
||||
|
||||
when(blockRepository.findByIdAndDocumentId(blockId, docId)).thenReturn(Optional.of(block));
|
||||
when(blockRepository.save(any())).thenAnswer(inv -> inv.getArgument(0));
|
||||
when(documentService.getDocumentById(any())).thenReturn(
|
||||
Document.builder().scriptType(ScriptType.TYPEWRITER).build());
|
||||
|
||||
UpdateTranscriptionBlockDTO dto = UpdateTranscriptionBlockDTO.builder()
|
||||
.text("@Auguste text")
|
||||
.mentionedPersons(List.of(incoming))
|
||||
.build();
|
||||
|
||||
TranscriptionBlock result = transcriptionService.updateBlock(docId, blockId, dto, UUID.randomUUID());
|
||||
|
||||
assertThat(result.getMentionedPersons())
|
||||
.containsExactly(incoming)
|
||||
.doesNotContain(prior);
|
||||
}
|
||||
|
||||
@Test
|
||||
void updateBlock_triggersTraining_whenKurrentSenderPresent() {
|
||||
UUID docId = UUID.randomUUID();
|
||||
|
||||
Reference in New Issue
Block a user