You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by zh...@apache.org on 2017/07/29 00:52:22 UTC
[11/50] [abbrv] geode git commit: GEODE-3231: withLogFile does not
imply withWorkingDir anymore
GEODE-3231: withLogFile does not imply withWorkingDir anymore
Project: http://git-wip-us.apache.org/repos/asf/geode/repo
Commit: http://git-wip-us.apache.org/repos/asf/geode/commit/7f86d0cd
Tree: http://git-wip-us.apache.org/repos/asf/geode/tree/7f86d0cd
Diff: http://git-wip-us.apache.org/repos/asf/geode/diff/7f86d0cd
Branch: refs/heads/feature/GEM-1483
Commit: 7f86d0cdb7ee50387ae995f57362155cab9eb1bc
Parents: 0675317
Author: Jinmei Liao <ji...@pivotal.io>
Authored: Fri Jul 21 22:40:30 2017 -0700
Committer: Jinmei Liao <ji...@pivotal.io>
Committed: Tue Jul 25 11:08:36 2017 -0700
----------------------------------------------------------------------
.../ClassPathLoaderIntegrationTest.java | 24 +++--
.../cli/commands/ExportLogsDUnitTest.java | 3 +-
.../cli/commands/ExportLogsIntegrationTest.java | 4 +-
.../ExportLogsOnServerManagerDUnit.java | 3 +-
.../cli/commands/ExportLogsStatsDUnitTest.java | 3 +-
.../ExportLogsFunctionIntegrationTest.java | 34 +------
.../cli/functions/ExportLogsFunctionTest.java | 40 +++++++-
.../functions/SizeExportLogsFunctionTest.java | 4 +-
.../cli/util/LogExporterIntegrationTest.java | 2 +-
.../internal/cli/util/MergeLogsDUnitTest.java | 3 +-
.../DiskStoreMXBeanSecurityJUnitTest.java | 19 ++--
.../dunit/rules/GfshShellConnectionRule.java | 22 ++---
.../dunit/rules/LocatorServerStartupRule.java | 33 +++----
.../test/dunit/rules/LocatorStarterRule.java | 16 +---
.../test/dunit/rules/MemberStarterRule.java | 96 ++++++++------------
.../test/dunit/rules/ServerStarterRule.java | 19 ----
.../dunit/rules/test/MemberStarterRuleTest.java | 12 +--
.../internal/security/LogNoPasswordTest.java | 2 +-
18 files changed, 149 insertions(+), 190 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/internal/ClassPathLoaderIntegrationTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/internal/ClassPathLoaderIntegrationTest.java b/geode-core/src/test/java/org/apache/geode/internal/ClassPathLoaderIntegrationTest.java
index 721e502..34d8a23 100644
--- a/geode-core/src/test/java/org/apache/geode/internal/ClassPathLoaderIntegrationTest.java
+++ b/geode-core/src/test/java/org/apache/geode/internal/ClassPathLoaderIntegrationTest.java
@@ -16,7 +16,10 @@ package org.apache.geode.internal;
import static org.assertj.core.api.Assertions.assertThat;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertFalse;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
import java.io.BufferedInputStream;
import java.io.File;
@@ -33,13 +36,6 @@ import org.apache.bcel.Constants;
import org.apache.bcel.classfile.JavaClass;
import org.apache.bcel.generic.ClassGen;
import org.apache.commons.io.FileUtils;
-import org.apache.geode.cache.execute.Execution;
-import org.apache.geode.cache.execute.FunctionService;
-import org.apache.geode.cache.execute.ResultCollector;
-import org.apache.geode.distributed.DistributedSystem;
-import org.apache.geode.internal.cache.GemFireCacheImpl;
-import org.apache.geode.test.junit.rules.RestoreTCCLRule;
-import org.apache.geode.test.dunit.rules.ServerStarterRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -47,7 +43,14 @@ import org.junit.contrib.java.lang.system.RestoreSystemProperties;
import org.junit.experimental.categories.Category;
import org.junit.rules.TemporaryFolder;
+import org.apache.geode.cache.execute.Execution;
+import org.apache.geode.cache.execute.FunctionService;
+import org.apache.geode.cache.execute.ResultCollector;
+import org.apache.geode.distributed.DistributedSystem;
+import org.apache.geode.internal.cache.GemFireCacheImpl;
+import org.apache.geode.test.dunit.rules.ServerStarterRule;
import org.apache.geode.test.junit.categories.IntegrationTest;
+import org.apache.geode.test.junit.rules.RestoreTCCLRule;
/**
* Integration tests for {@link ClassPathLoader}.
@@ -238,7 +241,8 @@ public class ClassPathLoaderIntegrationTest {
outStream.write(jarBytes);
outStream.close();
- ServerStarterRule serverStarterRule = new ServerStarterRule(temporaryFolder.getRoot());
+ ServerStarterRule serverStarterRule =
+ new ServerStarterRule().withWorkingDir(temporaryFolder.getRoot());
serverStarterRule.startServer();
GemFireCacheImpl gemFireCache = GemFireCacheImpl.getInstance();
@@ -257,7 +261,7 @@ public class ClassPathLoaderIntegrationTest {
File jarVersion1 = createVersionOfJar("Version1", "MyFunction", "MyJar.jar");
File jarVersion2 = createVersionOfJar("Version2", "MyFunction", "MyJar.jar");
- ServerStarterRule serverStarterRule = new ServerStarterRule(temporaryFolder.getRoot());
+ ServerStarterRule serverStarterRule = new ServerStarterRule();
serverStarterRule.startServer();
GemFireCacheImpl gemFireCache = GemFireCacheImpl.getInstance();
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsDUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsDUnitTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsDUnitTest.java
index 492e304..0e31de6 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsDUnitTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsDUnitTest.java
@@ -65,7 +65,8 @@ public class ExportLogsDUnitTest {
private static final String ERROR_LOG_PREFIX = "[IGNORE]";
@Rule
- public LocatorServerStartupRule lsRule = new LocatorServerStartupRule().withLogFile();
+ public LocatorServerStartupRule lsRule =
+ new LocatorServerStartupRule().withTempWorkingDir().withLogFile();
@Rule
public GfshShellConnectionRule gfshConnector = new GfshShellConnectionRule();
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsIntegrationTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsIntegrationTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsIntegrationTest.java
index 6726ede..a145b27 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsIntegrationTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsIntegrationTest.java
@@ -33,9 +33,9 @@ import org.apache.geode.test.junit.categories.IntegrationTest;
@Category(IntegrationTest.class)
public class ExportLogsIntegrationTest {
-
@ClassRule
- public static LocatorStarterRule locator = new LocatorStarterRule().withLogFile().withAutoStart();
+ public static LocatorStarterRule locator =
+ new LocatorStarterRule().withWorkingDir().withLogFile().withAutoStart();
@Rule
public GfshShellConnectionRule gfsh = new GfshShellConnectionRule();
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsOnServerManagerDUnit.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsOnServerManagerDUnit.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsOnServerManagerDUnit.java
index 557fae7..6a7a864 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsOnServerManagerDUnit.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsOnServerManagerDUnit.java
@@ -38,7 +38,8 @@ import org.apache.geode.test.junit.categories.DistributedTest;
public class ExportLogsOnServerManagerDUnit {
@Rule
- public LocatorServerStartupRule lsRule = new LocatorServerStartupRule().withLogFile();
+ public LocatorServerStartupRule lsRule =
+ new LocatorServerStartupRule().withTempWorkingDir().withLogFile();
@Rule
public GfshShellConnectionRule gfshConnector = new GfshShellConnectionRule();
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsStatsDUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsStatsDUnitTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsStatsDUnitTest.java
index a1dff25..e2214f5 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsStatsDUnitTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/commands/ExportLogsStatsDUnitTest.java
@@ -53,7 +53,8 @@ import org.apache.geode.test.junit.categories.DistributedTest;
@Category(DistributedTest.class)
public class ExportLogsStatsDUnitTest {
@ClassRule
- public static LocatorServerStartupRule lsRule = new LocatorServerStartupRule().withLogFile();
+ public static LocatorServerStartupRule lsRule =
+ new LocatorServerStartupRule().withTempWorkingDir().withLogFile();
@ClassRule
public static GfshShellConnectionRule connector = new GfshShellConnectionRule();
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunctionIntegrationTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunctionIntegrationTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunctionIntegrationTest.java
index 9669669..0c1be05 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunctionIntegrationTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunctionIntegrationTest.java
@@ -23,7 +23,6 @@ import java.io.File;
import java.io.IOException;
import org.apache.commons.io.FileUtils;
-import org.apache.logging.log4j.Level;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -42,7 +41,7 @@ public class ExportLogsFunctionIntegrationTest {
@Rule
public ServerStarterRule serverStarterRule =
- new ServerStarterRule().withLogFile().withAutoStart();
+ new ServerStarterRule().withWorkingDir().withAutoStart();
private File serverWorkingDir;
@Before
@@ -99,37 +98,6 @@ public class ExportLogsFunctionIntegrationTest {
assertThat(cache.getRegion(ExportLogsFunction.EXPORT_LOGS_REGION)).isNull();
}
-
- @Test
- public void argsCorrectlyBuildALogLevelFilter() {
- ExportLogsFunction.Args args =
- new ExportLogsFunction.Args(null, null, "info", false, false, false);
- assertThat(args.getLogLevel().toString()).isEqualTo("INFO");
- assertThat(args.isThisLogLevelOnly()).isFalse();
- assertThat(args.isIncludeLogs()).isTrue();
- assertThat(args.isIncludeStats()).isTrue();
- }
-
- @Test
- public void argsCorrectlyBuilt() {
- ExportLogsFunction.Args args =
- new ExportLogsFunction.Args(null, null, "error", true, true, false);
- assertThat(args.getLogLevel()).isEqualTo(Level.ERROR);
- assertThat(args.isThisLogLevelOnly()).isTrue();
- assertThat(args.isIncludeLogs()).isTrue();
- assertThat(args.isIncludeStats()).isFalse();
- }
-
- @Test
- public void argsCorrectlyBuiltWithGeodeLevel() {
- ExportLogsFunction.Args args =
- new ExportLogsFunction.Args(null, null, "fine", true, true, false);
- assertThat(args.getLogLevel()).isEqualTo(Level.DEBUG);
- assertThat(args.isThisLogLevelOnly()).isTrue();
- assertThat(args.isIncludeLogs()).isTrue();
- assertThat(args.isIncludeStats()).isFalse();
- }
-
private static class CapturingResultSender implements ResultSender {
private Throwable t;
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunctionTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunctionTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunctionTest.java
index 4e72444..c57852d 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunctionTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/ExportLogsFunctionTest.java
@@ -16,15 +16,17 @@
package org.apache.geode.management.internal.cli.functions;
-import static org.junit.Assert.assertTrue;
+import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+
+import org.apache.logging.log4j.Level;
+import org.junit.Test;
+import org.junit.experimental.categories.Category;
import org.apache.geode.internal.logging.log4j.LogLevel;
import org.apache.geode.management.internal.cli.commands.ExportLogsCommand;
import org.apache.geode.test.junit.categories.UnitTest;
-import org.junit.Test;
-import org.apache.logging.log4j.Level;
-import org.junit.experimental.categories.Category;
@Category(UnitTest.class)
public class ExportLogsFunctionTest {
@@ -42,4 +44,34 @@ public class ExportLogsFunctionTest {
assertEquals(args2.getLogLevel(), Level.ALL);
}
+ @Test
+ public void argsCorrectlyBuildALogLevelFilter() {
+ ExportLogsFunction.Args args =
+ new ExportLogsFunction.Args(null, null, "info", false, false, false);
+ assertThat(args.getLogLevel().toString()).isEqualTo("INFO");
+ assertThat(args.isThisLogLevelOnly()).isFalse();
+ assertThat(args.isIncludeLogs()).isTrue();
+ assertThat(args.isIncludeStats()).isTrue();
+ }
+
+ @Test
+ public void argsCorrectlyBuilt() {
+ ExportLogsFunction.Args args =
+ new ExportLogsFunction.Args(null, null, "error", true, true, false);
+ assertThat(args.getLogLevel()).isEqualTo(Level.ERROR);
+ assertThat(args.isThisLogLevelOnly()).isTrue();
+ assertThat(args.isIncludeLogs()).isTrue();
+ assertThat(args.isIncludeStats()).isFalse();
+ }
+
+ @Test
+ public void argsCorrectlyBuiltWithGeodeLevel() {
+ ExportLogsFunction.Args args =
+ new ExportLogsFunction.Args(null, null, "fine", true, true, false);
+ assertThat(args.getLogLevel()).isEqualTo(Level.DEBUG);
+ assertThat(args.isThisLogLevelOnly()).isTrue();
+ assertThat(args.isIncludeLogs()).isTrue();
+ assertThat(args.isIncludeStats()).isFalse();
+ }
+
}
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/SizeExportLogsFunctionTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/SizeExportLogsFunctionTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/SizeExportLogsFunctionTest.java
index 12410c7..f9772c8 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/SizeExportLogsFunctionTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/functions/SizeExportLogsFunctionTest.java
@@ -62,7 +62,7 @@ public class SizeExportLogsFunctionTest {
public TestName testName = new TestName();
@Rule
- public ServerStarterRule server = new ServerStarterRule().withLogFile();
+ public ServerStarterRule server = new ServerStarterRule();
@Before
public void before() throws Throwable {
@@ -121,6 +121,8 @@ public class SizeExportLogsFunctionTest {
@Test
public void sizeGreaterThanDiskAvailable_sendsErrorResult() throws Throwable {
+ config.setProperty(LOG_FILE, logFile.getAbsolutePath());
+ config.setProperty(STATISTIC_ARCHIVE_FILE, statFile.getAbsolutePath());
server.withProperties(config).startServer();
FunctionContext context =
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/LogExporterIntegrationTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/LogExporterIntegrationTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/LogExporterIntegrationTest.java
index 0cd6d5a..5ea3ac0 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/LogExporterIntegrationTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/LogExporterIntegrationTest.java
@@ -42,7 +42,7 @@ import org.apache.geode.test.junit.categories.IntegrationTest;
public class LogExporterIntegrationTest {
@Rule
- public ServerStarterRule server = new ServerStarterRule().withLogFile();
+ public ServerStarterRule server = new ServerStarterRule().withWorkingDir();
private LogExporter logExporter;
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/MergeLogsDUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/MergeLogsDUnitTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/MergeLogsDUnitTest.java
index 35d65a0..f297018 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/MergeLogsDUnitTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/cli/util/MergeLogsDUnitTest.java
@@ -40,7 +40,8 @@ import org.apache.geode.test.junit.categories.DistributedTest;
@Category(DistributedTest.class)
public class MergeLogsDUnitTest {
@Rule
- public LocatorServerStartupRule lsRule = new LocatorServerStartupRule().withLogFile();
+ public LocatorServerStartupRule lsRule =
+ new LocatorServerStartupRule().withTempWorkingDir().withLogFile();
private MemberVM locator;
private static final String MESSAGE_1 = "MergeLogsMessage1";
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/management/internal/security/DiskStoreMXBeanSecurityJUnitTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/management/internal/security/DiskStoreMXBeanSecurityJUnitTest.java b/geode-core/src/test/java/org/apache/geode/management/internal/security/DiskStoreMXBeanSecurityJUnitTest.java
index 4d101e7..7c9981e 100644
--- a/geode-core/src/test/java/org/apache/geode/management/internal/security/DiskStoreMXBeanSecurityJUnitTest.java
+++ b/geode-core/src/test/java/org/apache/geode/management/internal/security/DiskStoreMXBeanSecurityJUnitTest.java
@@ -14,16 +14,14 @@
*/
package org.apache.geode.management.internal.security;
-import static org.apache.geode.distributed.ConfigurationProperties.SECURITY_MANAGER;
import static org.assertj.core.api.Assertions.assertThatThrownBy;
import org.assertj.core.api.SoftAssertions;
import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.ClassRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.experimental.categories.Category;
+import org.junit.rules.RuleChain;
import org.apache.geode.management.DiskStoreMXBean;
import org.apache.geode.security.SimpleTestSecurityManager;
@@ -37,21 +35,18 @@ import org.apache.geode.test.junit.categories.SecurityTest;
public class DiskStoreMXBeanSecurityJUnitTest {
private DiskStoreMXBean bean;
- @ClassRule
- public static ServerStarterRule server = new ServerStarterRule().withJMXManager()
- .withProperty(SECURITY_MANAGER, SimpleTestSecurityManager.class.getName()).withAutoStart();
+ public ServerStarterRule server = new ServerStarterRule().withJMXManager()
+ .withSecurityManager(SimpleTestSecurityManager.class).withAutoStart();
- @BeforeClass
- public static void beforeClass() throws Exception {
- server.getCache().createDiskStoreFactory().create("diskstore");
- }
-
- @Rule
public MBeanServerConnectionRule connectionRule =
new MBeanServerConnectionRule(server::getJmxPort);
+ @Rule
+ public RuleChain ruleChain = RuleChain.outerRule(server).around(connectionRule);
+
@Before
public void setUp() throws Exception {
+ server.getCache().createDiskStoreFactory().create("diskstore");
bean = connectionRule.getProxyMBean(DiskStoreMXBean.class);
}
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
index 872553e..df371d2 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/GfshShellConnectionRule.java
@@ -17,7 +17,13 @@ package org.apache.geode.test.dunit.rules;
import static org.apache.geode.test.dunit.IgnoredException.addIgnoredException;
import static org.assertj.core.api.Assertions.assertThat;
+import java.util.function.Supplier;
+
import org.apache.commons.lang.StringUtils;
+import org.json.JSONArray;
+import org.junit.rules.TemporaryFolder;
+import org.junit.runner.Description;
+
import org.apache.geode.management.cli.Result;
import org.apache.geode.management.internal.cli.HeadlessGfsh;
import org.apache.geode.management.internal.cli.i18n.CliStrings;
@@ -25,11 +31,6 @@ import org.apache.geode.management.internal.cli.result.CommandResult;
import org.apache.geode.management.internal.cli.util.CommandStringBuilder;
import org.apache.geode.test.dunit.IgnoredException;
import org.apache.geode.test.junit.rules.DescribedExternalResource;
-import org.json.JSONArray;
-import org.junit.rules.TemporaryFolder;
-import org.junit.runner.Description;
-
-import java.util.function.Supplier;
/**
* Class which eases the connection to the locator/jmxManager in Gfsh shell and execute gfsh
@@ -88,15 +89,14 @@ public class GfshShellConnectionRule extends DescribedExternalResource {
return;
}
- // do not auto connect if it's not used with ConnectionConfiguration
ConnectionConfiguration config = description.getAnnotation(ConnectionConfiguration.class);
if (config == null) {
- return;
+ connectAndVerify(portSupplier.get(), portType);
+ } else {
+ // when config is not null, developer may deliberately pass in a wrong
+ // password so that the test will verify the connection itself. So do not verify here.
+ secureConnect(portSupplier.get(), portType, config.user(), config.password());
}
-
- connect(portSupplier.get(), portType, CliStrings.CONNECT__USERNAME, config.user(),
- CliStrings.CONNECT__PASSWORD, config.password());
-
}
public void connect(Member locator, String... options) throws Exception {
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorServerStartupRule.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorServerStartupRule.java b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorServerStartupRule.java
index d8753cf..a455aff 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorServerStartupRule.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorServerStartupRule.java
@@ -67,8 +67,8 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
}
/**
- * This rule will use a temporary folder to hold all the vm directories instead of using dunit
- * folder. It will set each VM's working dir to its respective sub-directories.
+ * This will use a temporary folder to hold all the vm directories instead of using dunit folder.
+ * It will set each VM's working dir to its respective sub-directories.
*
* use this if you want to examine each member's file system without worrying about it's being
* contaminated with DUnitLauncher's log files that exists in each dunit/vm folder such as
@@ -85,11 +85,9 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
}
/**
- * all the logs will go into the file. If this is called, a temp directory is used for this rule
- * instead of dunit folder. It's the same effect as calling .withTempWorkingDir() and withLogFile.
+ * this will allow all the logs go into log files instead of going into the console output
*/
public LocatorServerStartupRule withLogFile() {
- withTempWorkingDir();
this.logFile = true;
return this;
}
@@ -126,14 +124,13 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
properties.setProperty(NAME, name);
VM locatorVM = getHost(0).getVM(index);
Locator locator = locatorVM.invoke(() -> {
+ locatorStarter = new LocatorStarterRule();
if (useTempWorkingDir()) {
File workingDirFile = createWorkingDirForMember(name);
- locatorStarter = new LocatorStarterRule(workingDirFile);
- } else {
- locatorStarter = new LocatorStarterRule();
+ locatorStarter.withWorkingDir(workingDirFile);
}
-
- locatorStarter.withLogFile(logFile);
+ if (logFile)
+ locatorStarter.withLogFile();
locatorStarter.withProperties(properties).withAutoStart();
locatorStarter.before();
return locatorStarter;
@@ -163,13 +160,13 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
properties.setProperty(NAME, name);
VM serverVM = getHost(0).getVM(index);
Server server = serverVM.invoke(() -> {
+ serverStarter = new ServerStarterRule();
if (useTempWorkingDir()) {
File workingDirFile = createWorkingDirForMember(name);
- serverStarter = new ServerStarterRule(workingDirFile);
- } else {
- serverStarter = new ServerStarterRule();
+ serverStarter.withWorkingDir(workingDirFile);
}
- serverStarter.withLogFile(logFile);
+ if (logFile)
+ serverStarter.withLogFile();
serverStarter.withProperties(properties).withConnectionToLocator(locatorPort).withAutoStart();
serverStarter.before();
return serverStarter;
@@ -192,13 +189,13 @@ public class LocatorServerStartupRule extends ExternalResource implements Serial
VM serverVM = getHost(0).getVM(index);
Server server = serverVM.invoke(() -> {
+ serverStarter = new ServerStarterRule();
if (useTempWorkingDir()) {
File workingDirFile = createWorkingDirForMember(name);
- serverStarter = new ServerStarterRule(workingDirFile);
- } else {
- serverStarter = new ServerStarterRule();
+ serverStarter.withWorkingDir(workingDirFile);
}
- serverStarter.withLogFile(logFile);
+ if (logFile)
+ serverStarter.withLogFile();
serverStarter.withEmbeddedLocator().withName(name).withJMXManager().withAutoStart();
serverStarter.before();
return serverStarter;
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorStarterRule.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorStarterRule.java b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorStarterRule.java
index e1c14ce..7f787b2 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorStarterRule.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/LocatorStarterRule.java
@@ -18,14 +18,14 @@ package org.apache.geode.test.dunit.rules;
import static org.apache.geode.distributed.Locator.startLocatorAndDS;
import static org.junit.Assert.assertTrue;
-import org.apache.geode.distributed.internal.DistributionConfig;
-import org.apache.geode.distributed.internal.InternalLocator;
-import org.awaitility.Awaitility;
-
-import java.io.File;
import java.io.IOException;
import java.util.concurrent.TimeUnit;
+import org.awaitility.Awaitility;
+
+import org.apache.geode.distributed.internal.DistributionConfig;
+import org.apache.geode.distributed.internal.InternalLocator;
+
/**
* This is a rule to start up a locator in your current VM. It's useful for your Integration Tests.
*
@@ -46,12 +46,6 @@ public class LocatorStarterRule extends MemberStarterRule<LocatorStarterRule> im
private transient InternalLocator locator;
- public LocatorStarterRule() {}
-
- public LocatorStarterRule(File workingDir) {
- super(workingDir);
- }
-
public InternalLocator getLocator() {
return locator;
}
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/test/dunit/rules/MemberStarterRule.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/MemberStarterRule.java b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/MemberStarterRule.java
index 156236b..a832a25 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/MemberStarterRule.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/MemberStarterRule.java
@@ -44,9 +44,9 @@ import org.apache.geode.security.SecurityManager;
* duplication.
*/
public abstract class MemberStarterRule<T> extends ExternalResource implements Member {
- protected transient TemporaryFolder temporaryFolder;
protected String oldUserDir;
+ protected transient TemporaryFolder temporaryFolder;
protected File workingDir;
protected int memberPort = -1;
protected int jmxPort = -1;
@@ -59,21 +59,45 @@ public abstract class MemberStarterRule<T> extends ExternalResource implements M
protected boolean autoStart = false;
public MemberStarterRule() {
- this(null);
- }
-
- // Not meant to be public, only used by LocatorServerStartupRule
- MemberStarterRule(File workDir) {
oldUserDir = System.getProperty("user.dir");
- workingDir = workDir;
- if (workDir != null) {
- withWorkingDir();
- }
+
// initial values
properties.setProperty(MCAST_PORT, "0");
properties.setProperty(LOCATORS, "");
}
+ public T withWorkingDir(File workingDir) {
+ this.workingDir = workingDir;
+ if (workingDir != null) {
+ System.setProperty("user.dir", workingDir.toString());
+ }
+ return (T) this;
+ }
+
+ /**
+ * create a working dir using temporaryFolder. Use with caution, this sets "user.dir" system
+ * property that not approved by JDK
+ */
+ public T withWorkingDir() {
+ temporaryFolder = new TemporaryFolder();
+ try {
+ temporaryFolder.create();
+ } catch (IOException e) {
+ throw new RuntimeException(e.getMessage(), e);
+ }
+ withWorkingDir(temporaryFolder.getRoot().getAbsoluteFile());
+ return (T) this;
+ }
+
+ /**
+ * All the logs are written in the logfile instead on the console. this is usually used with
+ * withWorkingDir so that logs are accessible and will be cleaned up afterwards.
+ */
+ public T withLogFile() {
+ this.logFile = true;
+ return (T) this;
+ }
+
@Override
public void after() {
// invoke stopMember() first and then ds.disconnect
@@ -84,15 +108,15 @@ public abstract class MemberStarterRule<T> extends ExternalResource implements M
ds.disconnect();
}
+ if (temporaryFolder != null) {
+ temporaryFolder.delete();
+ }
+
if (oldUserDir == null) {
System.clearProperty("user.dir");
} else {
System.setProperty("user.dir", oldUserDir);
}
-
- if (temporaryFolder != null) {
- temporaryFolder.delete();
- }
}
public T withProperty(String key, String value) {
@@ -123,44 +147,6 @@ public abstract class MemberStarterRule<T> extends ExternalResource implements M
return (T) this;
}
- /**
- * this will make the logging to into a log file instead of on the console.
- *
- * Use with caution, the logs files are created in a temp working directory. this is achieved by
- * dynamically changing the "user.dir" system property.
- *
- * @return
- */
- public T withLogFile() {
- this.logFile = true;
- return (T) this;
- }
-
- // Not meant to be public, only used by LocatorServerStartupRule
- T withLogFile(boolean logFile) {
- this.logFile = logFile;
- return (T) this;
- }
-
- /**
- * create the working dir using temporaryFolder. Use with caution, this sets "user.dir" system
- * property that not approved by JDK
- */
- public T withWorkingDir() {
- if (workingDir == null) {
- temporaryFolder = new TemporaryFolder();
- try {
- temporaryFolder.create();
- } catch (IOException e) {
- throw new RuntimeException(e.getMessage(), e);
- }
- workingDir = temporaryFolder.getRoot().getAbsoluteFile();
- }
-
- System.setProperty("user.dir", workingDir.toString());
- return (T) this;
- }
-
public T withConnectionToLocator(int locatorPort) {
if (locatorPort > 0) {
properties.setProperty(LOCATORS, "localhost[" + locatorPort + "]");
@@ -221,12 +207,8 @@ public abstract class MemberStarterRule<T> extends ExternalResource implements M
}
// if caller wants the logs being put into a file instead of in console output
- // do it here since only here, we can gurantee the name is present
+ // do it here since only here, we can guarantee the name is present
if (logFile) {
- // if working dir is not created yet, creates it.
- if (workingDir == null) {
- withWorkingDir();
- }
properties.putIfAbsent(LOG_FILE, new File(name + ".log").getAbsolutePath());
}
}
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/test/dunit/rules/ServerStarterRule.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/ServerStarterRule.java b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/ServerStarterRule.java
index 0fd0e77..a645ce7 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/ServerStarterRule.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/ServerStarterRule.java
@@ -18,7 +18,6 @@ import static org.apache.geode.distributed.ConfigurationProperties.HTTP_SERVICE_
import static org.apache.geode.distributed.ConfigurationProperties.HTTP_SERVICE_PORT;
import static org.apache.geode.distributed.ConfigurationProperties.START_DEV_REST_API;
-import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
@@ -57,24 +56,6 @@ public class ServerStarterRule extends MemberStarterRule<ServerStarterRule> impl
private Map<String, RegionShortcut> regions = new HashMap<>();
- /**
- * Default constructor, if used, the rule will create a temporary folder as the server's working
- * dir, and will delete it when the test is done.
- */
- public ServerStarterRule() {
- // nothing
- }
-
- /**
- * if constructed this way, the rule won't be deleting the workingDir after the test is done. It's
- * the caller's responsibility to delete it.
- *
- * @param workingDir: the working dir this server should be writing the artifacts to.
- */
- public ServerStarterRule(File workingDir) {
- super(workingDir);
- }
-
public InternalCache getCache() {
return cache;
}
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-core/src/test/java/org/apache/geode/test/dunit/rules/test/MemberStarterRuleTest.java
----------------------------------------------------------------------
diff --git a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/test/MemberStarterRuleTest.java b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/test/MemberStarterRuleTest.java
index 4970cb5..f1686d9 100644
--- a/geode-core/src/test/java/org/apache/geode/test/dunit/rules/test/MemberStarterRuleTest.java
+++ b/geode-core/src/test/java/org/apache/geode/test/dunit/rules/test/MemberStarterRuleTest.java
@@ -90,19 +90,19 @@ public class MemberStarterRuleTest {
}
@Test
- public void userDirSetToWorkingDirWhenCreatedWithIt() throws Exception {
- locator = new LocatorStarterRule().withWorkingDir();
+ public void logFileDoesNotCreatesWorkingDir() throws Exception {
+ locator = new LocatorStarterRule().withLogFile();
locator.before();
- assertThat(System.getProperty("user.dir")).isEqualTo(locator.getWorkingDir().toString());
+ assertThat(locator.getName()).isNotNull();
+ assertThat(locator.getWorkingDir()).isNull();
}
@Test
- public void logInFileCreatesWorkingDir() throws Exception {
- locator = new LocatorStarterRule().withLogFile();
+ public void workDirCreatesWorkDir() throws Exception {
+ locator = new LocatorStarterRule().withWorkingDir();
locator.before();
- assertThat(locator.getName()).isNotNull();
assertThat(locator.getWorkingDir()).isNotNull();
}
}
http://git-wip-us.apache.org/repos/asf/geode/blob/7f86d0cd/geode-web/src/test/java/org/apache/geode/management/internal/security/LogNoPasswordTest.java
----------------------------------------------------------------------
diff --git a/geode-web/src/test/java/org/apache/geode/management/internal/security/LogNoPasswordTest.java b/geode-web/src/test/java/org/apache/geode/management/internal/security/LogNoPasswordTest.java
index 368d64d..20359a9 100644
--- a/geode-web/src/test/java/org/apache/geode/management/internal/security/LogNoPasswordTest.java
+++ b/geode-web/src/test/java/org/apache/geode/management/internal/security/LogNoPasswordTest.java
@@ -38,7 +38,7 @@ public class LogNoPasswordTest {
private static String PASSWORD = "abcdefghijklmn";
@Rule
public LocatorStarterRule locator = new LocatorStarterRule().withProperty(LOG_LEVEL, "DEBUG")
- .withLogFile().withSecurityManager(MySecurityManager.class);
+ .withWorkingDir().withLogFile().withSecurityManager(MySecurityManager.class);
@Rule
public GfshShellConnectionRule gfsh = new GfshShellConnectionRule();