Merge branch '1.3.x'

pull/5206/merge
Andy Wilkinson 9 years ago
commit 852ba54613

@ -1,5 +1,5 @@
/*
* Copyright 2012-2015 the original author or authors.
* Copyright 2012-2016 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -111,6 +111,7 @@ import org.springframework.util.StringUtils;
* {@code shell.command_path_patterns} in your application configuration.
*
* @author Christian Dupuis
* @author Matt Benson
* @see ShellProperties
*/
@Configuration
@ -395,11 +396,11 @@ public class CrshAutoConfiguration {
pluginClasses.add(plugin.getClass());
for (Class<?> pluginClass : pluginClasses) {
if (isEnabled(pluginClass)) {
return true;
if (!isEnabled(pluginClass)) {
return false;
}
}
return false;
return true;
}
private boolean isEnabled(Class<?> pluginClass) {

@ -1,5 +1,5 @@
/*
* Copyright 2012-2015 the original author or authors.
* Copyright 2012-2016 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@ -25,11 +25,13 @@ import java.util.UUID;
import org.crsh.auth.AuthenticationPlugin;
import org.crsh.auth.JaasAuthenticationPlugin;
import org.crsh.lang.impl.groovy.GroovyRepl;
import org.crsh.lang.impl.java.JavaLanguage;
import org.crsh.lang.spi.Language;
import org.crsh.plugin.PluginContext;
import org.crsh.plugin.PluginLifeCycle;
import org.crsh.plugin.ResourceKind;
import org.crsh.telnet.term.processor.ProcessorIOHandler;
import org.crsh.telnet.term.spi.TermIOHandler;
import org.crsh.vfs.Resource;
import org.junit.After;
import org.junit.Test;
@ -52,6 +54,8 @@ import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.web.context.support.AnnotationConfigWebApplicationContext;
import static org.assertj.core.api.Assertions.assertThat;
import static org.hamcrest.CoreMatchers.isA;
import static org.springframework.boot.testutil.Matched.when;
/**
* Tests for {@link CrshAutoConfiguration}.
@ -59,6 +63,7 @@ import static org.assertj.core.api.Assertions.assertThat;
* @author Christian Dupuis
* @author Andreas Ahlenstorf
* @author Eddú Meléndez
* @author Matt Benson
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
public class CrshAutoConfigurationTests {
@ -76,14 +81,16 @@ public class CrshAutoConfigurationTests {
public void testDisabledPlugins() throws Exception {
MockEnvironment env = new MockEnvironment();
env.setProperty("shell.disabled_plugins",
"GroovyREPL, termIOHandler, org.crsh.auth.AuthenticationPlugin");
"termIOHandler, org.crsh.auth.AuthenticationPlugin, javaLanguage");
load(env);
PluginLifeCycle lifeCycle = this.context.getBean(PluginLifeCycle.class);
assertThat(lifeCycle).isNotNull();
assertThat(lifeCycle.getContext().getPlugin(GroovyRepl.class)).isNull();
assertThat(lifeCycle.getContext().getPlugin(ProcessorIOHandler.class)).isNull();
assertThat(lifeCycle.getContext().getPlugin(JaasAuthenticationPlugin.class))
.isNull();
assertThat(lifeCycle.getContext().getPlugins(TermIOHandler.class))
.filteredOn(when(isA(ProcessorIOHandler.class))).isEmpty();
assertThat(lifeCycle.getContext().getPlugins(AuthenticationPlugin.class))
.filteredOn(when(isA(JaasAuthenticationPlugin.class))).isEmpty();
assertThat(lifeCycle.getContext().getPlugins(Language.class))
.filteredOn(when(isA(JavaLanguage.class))).isEmpty();
}
@Test

Loading…
Cancel
Save