public void walk(Handler handler) {
        walkSubtree(this.rootValidatable, new ConfigSaveValidationContext(null), handler);
    }
@Test
    public void shouldNotWalkSCMMaterialWhileTraversingPluggableSCMMaterial() {
        SCM scmConfig = mock(SCM.class);
        when(scmConfig.getName()).thenReturn("scm");
        when(scmConfig.getId()).thenReturn("scm-id");
        PluggableSCMMaterialConfig pluggableSCMMaterialConfig = new PluggableSCMMaterialConfig("scm-id");
        setField(pluggableSCMMaterialConfig, "scmConfig", scmConfig);
        BasicCruiseConfig config = new BasicCruiseConfig();
        config.getSCMs().add(scmConfig);
        final ConfigSaveValidationContext context = new ConfigSaveValidationContext(config);
        new GoConfigGraphWalker(pluggableSCMMaterialConfig).walk((validatable, ctx) -> validatable.validate(context));
        verify(scmConfig, never()).validate(any(ValidationContext.class));
    }