Sto utilizzando i tratti per rendere i miei controller ASCIUTTI. Voglio testare la classe Trait usando Spock. Qui è la mia caratteristica del campione e test case Spock rispettivamente:Come scrivere un caso di test di un'unità di spock per i tratti in graal 2.4?
trait SomeTrait {
public void checkSomething (Closure c){
// Do some operation
c.call
}
}
@TestMixin(GrailsUnitTestMixin)
class SomeTraitSpec extends Specification {
void "test checkSomething "(){
setup:
MockedClass mockedObj = new MockedClass()
def x=0
def c = {
x=1
}
when:
mockedObj.checkSomething(c)
then:
assert x==1
}
}
class MockedClass implements PermissionTrait {
// some thing
}
Dal tratto è un'interfaccia, ho una classe deriso nel mio banco di prova che sta attuando il Trait, ho creare un oggetto di questa classe deriso e chiamare il mio Metodo dei tratti che voglio testare. È questo l'approccio corretto, se non per favore punta nella giusta direzione con un esempio adatto.
Qualcuno ha affrontato una situazione del genere? –