You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2017/10/07 09:38:55 UTC
openmeetings git commit: [OPENMEETINGS-1714] additional admin tests
are added
Repository: openmeetings
Updated Branches:
refs/heads/master 39cbb3e35 -> fdda80c57
[OPENMEETINGS-1714] additional admin tests are added
Project: http://git-wip-us.apache.org/repos/asf/openmeetings/repo
Commit: http://git-wip-us.apache.org/repos/asf/openmeetings/commit/fdda80c5
Tree: http://git-wip-us.apache.org/repos/asf/openmeetings/tree/fdda80c5
Diff: http://git-wip-us.apache.org/repos/asf/openmeetings/diff/fdda80c5
Branch: refs/heads/master
Commit: fdda80c574bdeba39032520113a87e60dac72a9d
Parents: 39cbb3e
Author: Maxim Solodovnik <so...@gmail.com>
Authored: Sat Oct 7 16:38:47 2017 +0700
Committer: Maxim Solodovnik <so...@gmail.com>
Committed: Sat Oct 7 16:38:47 2017 +0700
----------------------------------------------------------------------
.../java/org/apache/openmeetings/cli/Admin.java | 7 ++-
.../src/main/assembly/scripts/admin.bat | 2 +-
.../src/main/assembly/scripts/admin.sh | 2 +-
.../openmeetings/web/pages/auth/SignInPage.java | 22 ++++-----
.../org/apache/openmeetings/cli/TestAdmin.java | 48 +++++++++++++++++++-
.../web/pages/install/TestInstall.java | 12 ++++-
6 files changed, 75 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/fdda80c5/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
----------------------------------------------------------------------
diff --git a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
index 1d9493d..2b7bf0b 100644
--- a/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
+++ b/openmeetings-install/src/main/java/org/apache/openmeetings/cli/Admin.java
@@ -76,6 +76,7 @@ import org.springframework.web.context.WebApplicationContext;
public class Admin {
private static final Logger log = Red5LoggerFactory.getLogger(Admin.class);
+ public static final String RED5_HOME = "red5_home";
private boolean verbose = false;
private InstallationConfig cfg = null;
@@ -190,9 +191,13 @@ public class Admin {
}
private void process(String... args) throws Exception {
+ step = "Initialization";
+ if (!System.getProperties().containsKey("context")) {
+ System.out.println(String.format("System.property 'context' is not set, defaulting to %s", DEFAULT_CONTEXT_NAME));
+ }
String ctxName = System.getProperty("context", DEFAULT_CONTEXT_NAME);
setWicketApplicationName(ctxName);
- File home = new File(System.getenv("RED5_HOME"));
+ File home = new File(System.getProperty(RED5_HOME));
OmFileHelper.setOmHome(new File(new File(home, "webapps"), ctxName));
CommandLineParser parser = new DefaultParser();
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/fdda80c5/openmeetings-server/src/main/assembly/scripts/admin.bat
----------------------------------------------------------------------
diff --git a/openmeetings-server/src/main/assembly/scripts/admin.bat b/openmeetings-server/src/main/assembly/scripts/admin.bat
index c5a47c2..340b2f9 100644
--- a/openmeetings-server/src/main/assembly/scripts/admin.bat
+++ b/openmeetings-server/src/main/assembly/scripts/admin.bat
@@ -17,5 +17,5 @@ set OM_CONTEXT=openmeetings
set CLASSPATH=%RED5_HOME%\*;%RED5_HOME%\conf;%RED5_HOME%\plugins\*;%RED5_HOME%\lib\*;%RED5_HOME%\webapps\%OM_CONTEXT%\WEB-INF\lib\*;%RED5_HOME%\webapps\%OM_CONTEXT%\WEB-INF;%RED5_HOME%\webapps\%OM_CONTEXT%\WEB-INF\classes
-java -cp "%CLASSPATH%" -Dcontext=%OM_CONTEXT% -Dlogback.ContextSelector=org.red5.logging.LoggingContextSelector org.apache.openmeetings.cli.Admin %*
+java -cp "%CLASSPATH%" -Dred5_home=%RED5_HOME% -Dcontext=%OM_CONTEXT% -Dlogback.ContextSelector=org.red5.logging.LoggingContextSelector org.apache.openmeetings.cli.Admin %*
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/fdda80c5/openmeetings-server/src/main/assembly/scripts/admin.sh
----------------------------------------------------------------------
diff --git a/openmeetings-server/src/main/assembly/scripts/admin.sh b/openmeetings-server/src/main/assembly/scripts/admin.sh
index a31a5ad..6868099 100644
--- a/openmeetings-server/src/main/assembly/scripts/admin.sh
+++ b/openmeetings-server/src/main/assembly/scripts/admin.sh
@@ -17,5 +17,5 @@ export OM_CONTEXT=openmeetings
export CLASSPATH=$RED5_HOME/*:$RED5_HOME/conf:$RED5_HOME/plugins/*:$RED5_HOME/lib/*:$RED5_HOME/webapps/${OM_CONTEXT}/WEB-INF/lib/*:$RED5_HOME/webapps/${OM_CONTEXT}/WEB-INF:$RED5_HOME/webapps/${OM_CONTEXT}/WEB-INF/classes
-java -cp "$CLASSPATH" -Dcontext=${OM_CONTEXT} -Dlogback.ContextSelector=org.red5.logging.LoggingContextSelector org.apache.openmeetings.cli.Admin $*
+java -cp "$CLASSPATH" -Dred5_home=${RED5_HOME} -Dcontext=${OM_CONTEXT} -Dlogback.ContextSelector=org.red5.logging.LoggingContextSelector org.apache.openmeetings.cli.Admin $*
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/fdda80c5/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
index 9bb1eb8..fdde19b 100644
--- a/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
+++ b/openmeetings-web/src/main/java/org/apache/openmeetings/web/pages/auth/SignInPage.java
@@ -150,23 +150,21 @@ public class SignInPage extends BaseInitedPage {
// ============= OAuth2 methods =============
public static void showAuth(final OAuthServer s, Component c) {
- String authUrl = prepareUrlParams(s.getRequestKeyUrl(), s.getClientId()
- , null, null, getRedirectUri(s, c), null);
+ String authUrl = prepareUrlParams(s.getRequestKeyUrl(), s.getClientId(), getRedirectUri(s, c), null, null, null);
log.debug("redirectUrl={}", authUrl);
throw new RedirectToUrlException(authUrl);
}
- public static String prepareUrlParams(String urlTemplate, String clientId, String clientSecret,
- String clientToken, String redirectUri, String code) {
+ public static String prepareUrlParams(String urlTemplate, String clientId, String redirectUri, String secret, String token, String code) {
String result = urlTemplate;
if (clientId != null) {
result = result.replace("{$client_id}", clientId);
}
- if (clientSecret != null) {
- result = result.replace("{$client_secret}", clientSecret);
+ if (secret != null) {
+ result = result.replace("{$client_secret}", secret);
}
- if (clientToken != null) {
- result = result.replace("{$access_token}", clientToken);
+ if (token != null) {
+ result = result.replace("{$access_token}", token);
}
if (redirectUri != null) {
try {
@@ -234,8 +232,8 @@ public class SignInPage extends BaseInitedPage {
String requestTokenBaseUrl = server.getRequestTokenUrl();
// build url params to request auth token
String requestTokenParams = server.getRequestTokenAttributes();
- requestTokenParams = prepareUrlParams(requestTokenParams, server.getClientId(), server.getClientSecret(),
- null, getRedirectUri(server, this), code);
+ requestTokenParams = prepareUrlParams(requestTokenParams, server.getClientId(), getRedirectUri(server, this)
+ , server.getClientSecret(), null, code);
// request auth token
HttpURLConnection urlConnection = (HttpURLConnection) new URL(requestTokenBaseUrl).openConnection();
prepareConnection(urlConnection);
@@ -281,8 +279,8 @@ public class SignInPage extends BaseInitedPage {
String lastname = server.getLastnameParamName();
// prepare url
String requestInfoUrl = server.getRequestInfoUrl();
- requestInfoUrl = prepareUrlParams(requestInfoUrl, server.getClientId(), server.getClientSecret(),
- token, getRedirectUri(server, this), code);
+ requestInfoUrl = prepareUrlParams(requestInfoUrl, server.getClientId(), getRedirectUri(server, this)
+ , server.getClientSecret(), token, code);
// send request
URLConnection connection = new URL(requestInfoUrl).openConnection();
prepareConnection(connection);
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/fdda80c5/openmeetings-web/src/test/java/org/apache/openmeetings/cli/TestAdmin.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/cli/TestAdmin.java b/openmeetings-web/src/test/java/org/apache/openmeetings/cli/TestAdmin.java
index eb6246b..f5b37bd 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/cli/TestAdmin.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/cli/TestAdmin.java
@@ -18,14 +18,44 @@
*/
package org.apache.openmeetings.cli;
+import static org.apache.commons.io.FileUtils.deleteDirectory;
+import static org.apache.openmeetings.cli.Admin.RED5_HOME;
+import static org.apache.openmeetings.util.OmFileHelper.getOmHome;
+import static org.apache.openmeetings.web.pages.install.TestInstall.resetDerbyHome;
+import static org.apache.openmeetings.web.pages.install.TestInstall.setDerbyHome;
import static org.junit.Assert.fail;
+import java.io.File;
+import java.io.IOException;
+import java.nio.file.Files;
+
+import org.apache.openmeetings.AbstractSpringTest;
+import org.junit.After;
import org.junit.Assert;
+import org.junit.Before;
import org.junit.Test;
public class TestAdmin {
+ private File tempFolder;
+
+ @Before
+ public void setUp() throws IOException {
+ AbstractSpringTest.setOmHome();
+ tempFolder = Files.createTempDirectory("omtempdb").toFile();
+ System.setProperty("user.dir", tempFolder.getCanonicalPath());
+ System.setProperty(RED5_HOME, getOmHome().getCanonicalPath());
+ setDerbyHome(tempFolder);
+ }
+
+ @After
+ public void tearDown() throws IOException {
+ resetDerbyHome();
+ System.getProperties().remove(RED5_HOME);
+ deleteDirectory(tempFolder);
+ }
+
@Test
- public void testNoParams() {
+ public void testNoArgs() {
try {
Admin.handle();
fail();
@@ -33,4 +63,20 @@ public class TestAdmin {
Assert.assertTrue(true);
}
}
+
+ @Test
+ public void testBadArgs() {
+ try {
+ Admin.handle("aaaa");
+ fail();
+ } catch (ExitException ee) {
+ Assert.assertTrue(true);
+ }
+ }
+
+ @Test
+ public void testUsage() {
+ Admin.handle("-h");
+ Assert.assertTrue(true);
+ }
}
http://git-wip-us.apache.org/repos/asf/openmeetings/blob/fdda80c5/openmeetings-web/src/test/java/org/apache/openmeetings/web/pages/install/TestInstall.java
----------------------------------------------------------------------
diff --git a/openmeetings-web/src/test/java/org/apache/openmeetings/web/pages/install/TestInstall.java b/openmeetings-web/src/test/java/org/apache/openmeetings/web/pages/install/TestInstall.java
index cf8683c..3e9f426 100644
--- a/openmeetings-web/src/test/java/org/apache/openmeetings/web/pages/install/TestInstall.java
+++ b/openmeetings-web/src/test/java/org/apache/openmeetings/web/pages/install/TestInstall.java
@@ -65,12 +65,20 @@ public class TestInstall {
protected WicketTester tester;
protected Random rnd = new Random();
+ public static void setDerbyHome(File f) throws IOException {
+ System.setProperty(DERBY_HOME, f.getCanonicalPath());
+ }
+
+ public static void resetDerbyHome() {
+ System.getProperties().remove(DERBY_HOME);
+ }
+
@Before
public void setUp() throws IOException {
AbstractSpringTest.setOmHome();
setWicketApplicationName(DEFAULT_APP_NAME);
tempFolder = Files.createTempDirectory("omtempdb").toFile();
- System.setProperty(DERBY_HOME, tempFolder.getCanonicalPath());
+ setDerbyHome(tempFolder);
tester = getWicketTester();
assertNotNull("Web session should not be null", WebSession.get());
Locale[] locales = Locale.getAvailableLocales();
@@ -81,7 +89,7 @@ public class TestInstall {
@After
public void tearDown() throws IOException {
AbstractWicketTester.destroy(tester);
- System.getProperties().remove(DERBY_HOME);
+ resetDerbyHome();
deleteDirectory(tempFolder);
}