chciałbym mock jakiś płynny interfejs z udawaną, który jest w zasadzie budowniczy mail:W jaki sposób mogę skutecznie kpić z płynnego interfejsu z próbkami Spocka?
this.builder()
.from(from)
.to(to)
.cc(cc)
.bcc(bcc)
.template(templateId, templateParameter)
.send();
Kiedy szydząc z tego Spocka, to wymaga wiele konfiguracji takiego:
def builder = Mock(Builder)
builder.from(_) >> builder
builder.to(_) >> builder
itp. Staje się jeszcze bardziej nieporęczna, gdy chcesz przetestować pewne interakcje z próbą, w zależności od przypadku użycia. Więc w zasadzie mam dwa pytania tutaj:
- Czy istnieje sposób, aby połączyć makiety zasady, abym mógł zrobić ogólny jedną konfigurację czasową płynny interfejs w sposobie, że mogę ponownie wykorzystać w każdym przypadku testowego, a następnie określić dodatkowe zasady dla każdego przypadku testowego?
Czy istnieje sposób na określenie kpiny z płynnego interfejsu z mniejszym kodem, np. coś takiego:
def builder = Mock (Builder) builder./(from|to|cc|bcc|template)/(*) >> budowniczy
lub coś równoważne Mockito Deep Stubs (patrz http://docs.mockito.googlecode.com/hg/org/mockito/Mockito.html#RETURNS_DEEP_STUBS)
wielki jest ten działa :) Dzięki! Jakieś plany ulepszenia tego, aby nie musieć powtarzać skrótów w tej części? –
Nie mamy żadnych planów na to. Fakt, że stubbing i szyderstwo interakcji występuje razem, jest nieodłączny od sposobu działania szyderczego schematu Spocka. Jest to to samo podejście, które stosuje JMock, EasyMock itp. Tylko Mockito stosuje inne podejście, które ma inne wady. –
Rozumiem, dziękuję za wyjaśnienie tego :) –