Альтернатива org.easymock.EasyMock.capture в Java 8 до 11 - PullRequest
1 голос
/ 05 марта 2020

Я пытаюсь получить значения в моем тесте

...
final Capture<MyDTO> myDTOCaptured = new Capture<MyDTO>();

EasyMock.expect(this.serviceMock.execute(capture(myDTOCaptured)).andReturn(someResult);
...

Документация гласит:

Устаревший API

org .easymock.EasyMock.capture (Capture) Из-за более жесткого принудительного удаления не компилируется в Java 7

http://easymock.sourceforge.net/api/easymock/3.1/deprecated-list.html

Версия 3.1 это версия, которую мы используем.

Есть ли альтернатива для захвата в Java 8+? Я полагаю, альтернативой является обновление версии.

Ответы [ 2 ]

2 голосов
/ 05 марта 2020

Обновление до последней версии EasyMock (4.2) и использование универсального c метода capture (Capture captured) в качестве замены

Ожидайте любой объект, но захватывает его для позднее используйте

Пример :

final Capture<TwoWayChannelMessage> initiateCapture = new Capture<>();
connection.sendToClient(capture(initiateCapture));
1 голос
/ 09 марта 2020

Этот сайт устарел. Настоящий современный сайт EasyMock - http://easymock.org/. EasyMock долгое время выходил из SourceForge на go.

Последний выпуск EasyMock был бы

Capture<TwoWayChannelMessage> initiateCapture = EasyMock.newCapture();
connection.sendToClient(capture(initiateCapture));
...