private void addManagerCalls()

in module/geb-spock/src/main/groovy/geb/spock/GebExtension.groovy [54:80]


    private void addManagerCalls(SpecInfo spec) {
        // do it in shared initializer interceptor instead of
        // specification interceptor, so that it is run already
        // before shared field initializers are executed
        spec.addSharedInitializerInterceptor { invocation ->
            getManager(invocation).beforeTestClass(invocation.spec.reflection)
            invocation.proceed()
        }

        spec.addInterceptor { invocation ->
            try {
                invocation.proceed()
            } finally {
                getManager(invocation).afterTestClass()
            }
        }

        spec.allFeatures*.addIterationInterceptor { invocation ->
            GebTestManager testManager = getManager(invocation)
            testManager.beforeTest(invocation.instance.getClass(), invocation.iteration.displayName)
            try {
                invocation.proceed()
            } finally {
                testManager.afterTest()
            }
        }
    }