private void checkGuaranteedStatesAreInitialized(Object instance) {
        for (Field field: FieldCache.get(instance.getClass())
                .getFieldsWithAnnotation(ProvidedScenarioState.class, ScenarioState.class)) {
            if (field.isAnnotationPresent(ProvidedScenarioState.class)) {
                if (field.getAnnotation(ProvidedScenarioState.class).guaranteed()) {
                    checkInitialized(instance, field);
                }
            }
            if (field.isAnnotationPresent(ScenarioState.class)) {
                if (field.getAnnotation(ScenarioState.class).guaranteed()) {
                    checkInitialized(instance, field);
                }
            }
        }
    }
@throws JGivenMissingRequiredScenarioStateException in case a field requires
                                                    a value and the value is not present
jgiven-core/src/main/java/com/tngtech/jgiven/impl/inject/ValueInjector.java