Ich bin sehr neu in Spock und ich habe kein Beispiel gefunden, was ich brauche, also denke ich, der beste Weg ist, Beispiel zu zeigen, was ich haben muss.Spock - spotting externen Service
z.B. Testklasse in spock:
def "getData"(){ // this is test of getData method from ExternalService when: Result result = externalService.getData() then: result.msg = 'SUCCESS' }
Klasse:
public class ExternalService(){ private ServiceConnector serviceConnector; public Result getData(){ Result result = serviceConnector.callAndGet(); prepareInformation(data); updateStatuses(data); return result; } }
Klassendaten:
public class Data{ private String msg; private int Id; // +getters/setters }
Und jetzt sind getData Test und möchte nur Methode verspotten callAndGet()
. Es bedeutet, dass jedes Mal, wenn ich callAndGet
rufe, ich Objektdaten mit msg SUCCESS haben muss, aber alle anderen Methoden von getData
Methode sollte normalerweise aufgerufen werden.
Ist es verständlich? Kannst du mir helfen?