Я пытаюсь написать "простой" модульный тест. Однако Mockito всегда сообщает мне, что существует UnfinishedStubbingException
.
Строка кода, которую Mockito раскрывает как виновника, следующая:
when(myServiceIdFactory.get(any())).thenReturn((SortedSet<MyServiceId>) Set.of(emptyId));
Вот весь код модульного теста
@SpringBootTest
@RunWith(SpringRunner.class)
public class MyServiceIdProcessorTest {
@Autowired
private MyServiceIdProcessor myServiceIdProcessor;
@MockBean
private MyServiceIdFactory myServiceIdFactory;
@Test
public void shouldFilterProductsWithNoId() {
Product productWithNoId = new Product();
MyServiceId emptyId = new MyServiceId();
when(myServiceIdFactory.get(any())).thenReturn((SortedSet<MyServiceId>) Set.of(emptyId));
CatalogDTO catalogDTO = new CatalogDTO();
Envelope<CatalogDTO, Product> envelopeToTest = Envelope.products(List.of(productWithNoId));
Envelope returnedEnvelope = myServiceIdProcessor.enrichCatalog(envelopeToTest);
assertThat(returnedEnvelope.getProducts()).hasSize(0);
}
}