2015-08-20 10 views
17

Jestem nowy dla Spocka i zapoznałem się z jego dokumentami internetowymi. Mam przypadek testowy, gdzie muszę zweryfikować mój wygląd oprawy że interakcja użytkownika z nie udawanym współpracownik robi nie produkują wyjątek:Sprawdź, czy nie zostały zgłoszone żadne wyjątki w Spock

class FizzSpec extends Specification { 
    def "no exception thrown when we hail buzz"() { 
     given: 
     Fizz fixture = new Fizz() 
     Buzz buzz = new Buzz("YES", true, "Garble barb") // A non-mock! 

     when: 
     fixture.hail(buzz) 

     // TODO: How to verify the hail didn't produce an exception? 
     // then: 
     // thrown() == null 
    } 
} 

jakieś pomysły, w jaki sposób można to osiągnąć?

+1

Jeśli znasz typ wyjątku, można zrobić 'notThrown (NullPointerException)' –

+0

Dzięki @tim_yates (+1) Zakładam, że to działa dla 'notThrown (Throwable)'? – smeeb

+0

Znaleźliśmy odpowiedź, którą myślę, dodano ją poniżej –

Odpowiedz

33

Znaleziono.

Można użyć

noExceptionThrown() 

Aby dochodzić nic wrzucono

+0

Bam! Dziękuję Ci! – smeeb

+0

Oto definicja interfejsu API http://spockframework.github.io/spock/javadoc/1.0/spock/lang/Specification.html#noExceptionThrown-- – aloksahoo

Powiązane problemy