Объявление, которое я ищу для создания шпиона:
Producer<String, String> producer = new KafkaProducer<String, String>(producerProps)
Мои попытки создать шпиона не увенчались успехом:
def spySvc = GroovySpy(service, global:true)
2 * new service.createKafkaProducer() >> mockedProducer; // fail
2 * new KafkaProducer(_) >> mockedProducer; // fail
2 * new KafkaProducer<String,String>(_) >> mockedProducer; //fail
Но когда я делаю создание Продюсера всвой собственный метод createKafkaProducer () и создать шпион при вызове метода, вот так, он работает:
2 * service.createKafkaProducer() >> mockedProducer; // success
Есть идеи?
(я понимаю, что код должен быть реорганизован для использования надлежащего DI, тогда проблема тривиальна и не нуждается в шпионе)