I wasn't planning to. But I can port it if necessary. At this point I think we need to add more tests to the commands-testsuite for it to be more useful.
Jarek On Wed, Jun 11, 2008 at 3:37 PM, Donald Woods <[EMAIL PROTECTED]> wrote: > Any plans to pull this into branches/2.1? > > > -Donald > > > [EMAIL PROTECTED] wrote: >> >> Author: gawor >> Date: Wed Jun 11 11:50:45 2008 >> New Revision: 666781 >> >> URL: http://svn.apache.org/viewvc?rev=666781&view=rev >> Log: >> Initial testsuite for command line tools. Patch from YunFeng Ma but with >> bunch of modifications (GERONIMO-4074) >> >> Added: >> geronimo/server/trunk/testsuite/commands-testsuite/ >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/ >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/goals.txt >> (with props) >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/pom.xml >> (with props) >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/ >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/ >> >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/ >> >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/apache/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/apache/geronimo/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/apache/geronimo/testsuite/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/apache/geronimo/testsuite/deploy/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/apache/geronimo/testsuite/deploy/DeployerTest.java >> (with props) >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/resources/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/resources/testng.xml >> (with props) >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/ >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/goals.txt >> (with props) >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/pom.xml >> (with props) >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/ >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/ >> >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/ >> >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/geronimo/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/geronimo/testsuite/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/geronimo/testsuite/gshell/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/geronimo/testsuite/gshell/deploy/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/geronimo/testsuite/gshell/deploy/DeployTest.java >> (with props) >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/resources/ >> >> >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/resources/testng.xml >> (with props) >> geronimo/server/trunk/testsuite/commands-testsuite/pom.xml (with >> props) >> geronimo/server/trunk/testsupport/testsupport-commands/ >> geronimo/server/trunk/testsupport/testsupport-commands/pom.xml (with >> props) >> geronimo/server/trunk/testsupport/testsupport-commands/src/ >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/ >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/ >> >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/ >> >> >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/apache/ >> >> >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/apache/geronimo/ >> >> >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/apache/geronimo/testsupport/ >> >> >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/apache/geronimo/testsupport/commands/ >> >> >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/apache/geronimo/testsupport/commands/CommandTestSupport.java >> (with props) >> Modified: >> geronimo/server/trunk/testsupport/pom.xml >> >> Added: geronimo/server/trunk/testsuite/commands-testsuite/deploy/goals.txt >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/commands-testsuite/deploy/goals.txt?rev=666781&view=auto >> >> ============================================================================== >> --- geronimo/server/trunk/testsuite/commands-testsuite/deploy/goals.txt >> (added) >> +++ geronimo/server/trunk/testsuite/commands-testsuite/deploy/goals.txt >> Wed Jun 11 11:50:45 2008 >> @@ -0,0 +1 @@ >> +clean install >> >> Propchange: >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/goals.txt >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Added: geronimo/server/trunk/testsuite/commands-testsuite/deploy/pom.xml >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/commands-testsuite/deploy/pom.xml?rev=666781&view=auto >> >> ============================================================================== >> --- geronimo/server/trunk/testsuite/commands-testsuite/deploy/pom.xml >> (added) >> +++ geronimo/server/trunk/testsuite/commands-testsuite/deploy/pom.xml Wed >> Jun 11 11:50:45 2008 >> @@ -0,0 +1,35 @@ >> +<?xml version="1.0" encoding="UTF-8"?> >> +<!-- >> + Licensed to the Apache Software Foundation (ASF) under one or more >> + contributor license agreements. See the NOTICE file distributed with >> + this work for additional information regarding copyright ownership. >> + The ASF licenses this file to You under the Apache License, Version 2.0 >> + (the "License"); you may not use this file except in compliance with >> + the License. You may obtain a copy of the License at >> + >> + http://www.apache.org/licenses/LICENSE-2.0 >> + >> + Unless required by applicable law or agreed to in writing, software >> + distributed under the License is distributed on an "AS IS" BASIS, >> + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or >> implied. >> + See the License for the specific language governing permissions and >> + limitations under the License. >> +--> >> +<project xmlns="http://maven.apache.org/POM/4.0.0" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 >> http://maven.apache.org/maven-v4_0_0.xsd"> >> + <modelVersion>4.0.0</modelVersion> >> + >> + <parent> >> + <groupId>org.apache.geronimo.testsuite</groupId> >> + <artifactId>commands-testsuite</artifactId> >> + <version>2.2-SNAPSHOT</version> >> + </parent> >> + >> + <artifactId>deployer-testsuite</artifactId> >> + <name>Geronimo TestSuite :: Commands Testsuite :: Deployer</name> >> + >> + <description> >> + Test for the deploy.bat/sh >> + </description> >> + >> +</project> >> >> Propchange: >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/pom.xml >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Added: >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/apache/geronimo/testsuite/deploy/DeployerTest.java >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/apache/geronimo/testsuite/deploy/DeployerTest.java?rev=666781&view=auto >> >> ============================================================================== >> --- >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/apache/geronimo/testsuite/deploy/DeployerTest.java >> (added) >> +++ >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/apache/geronimo/testsuite/deploy/DeployerTest.java >> Wed Jun 11 11:50:45 2008 >> @@ -0,0 +1,102 @@ >> +/** >> + * Licensed to the Apache Software Foundation (ASF) under one >> + * or more contributor license agreements. See the NOTICE file >> + * distributed with this work for additional information >> + * regarding copyright ownership. The ASF licenses this file >> + * to you under the Apache License, Version 2.0 (the >> + * "License"); you may not use this file except in compliance >> + * with the License. You may obtain a copy of the License at >> + * >> + * http://www.apache.org/licenses/LICENSE-2.0 >> + * >> + * Unless required by applicable law or agreed to in writing, >> + * software distributed under the License is distributed on an >> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >> + * KIND, either express or implied. See the License for the >> + * specific language governing permissions and limitations >> + * under the License. >> + */ >> + >> +package org.apache.geronimo.testsuite.deploy; >> + >> +import java.io.ByteArrayOutputStream; >> +import java.util.ArrayList; >> +import java.util.Arrays; >> +import java.util.List; >> + >> +import org.apache.geronimo.testsupport.commands.CommandTestSupport; >> +import org.testng.Assert; >> +import org.testng.annotations.Test; >> + >> [EMAIL PROTECTED] >> +public class DeployerTest extends CommandTestSupport { >> + >> + protected String execute(String[] args) throws Exception { >> + ByteArrayOutputStream baos = new ByteArrayOutputStream(); >> + List<String> cmd = new ArrayList<String>(); >> + cmd.addAll(Arrays.asList("--user", "system", "--password", >> "manager")); >> + if (args != null) { >> + cmd.addAll(Arrays.asList(args)); >> + } >> + execute(CommandTestSupport.DEPLOY, cmd, null, baos); >> + return baos.toString(); >> + } >> + + @Test >> + public void testListAllModules() throws Exception { >> + String[] args = new String[]{ "list-modules" }; >> + + String output = execute(args); >> + >> + if (output.indexOf("org.apache.geronimo.configs/activemq-broker") >> < 0) { >> + Assert.fail("list-modules failed : " + output); >> + } >> + } >> + + @Test >> + public void testListStartedModules() throws Exception { >> + String[] args = new String[]{ "list-modules", "--started" }; >> + + String output = execute(args); >> + >> + if (output.indexOf("org.apache.geronimo.configs/activemq-broker") >> < 0) { >> + Assert.fail("list-modules failed : " + output); >> + } >> + if >> (output.indexOf("org.apache.geronimo.configs/client-corba-yoko") > 0) { >> + Assert.fail("list-modules failed : " + output); >> + } >> + } >> + + @Test >> + public void testListStoppedModules() throws Exception { >> + String[] args = new String[]{ "list-modules", "--stopped" }; >> + + String output = execute(args); >> + >> + if (output.indexOf("org.apache.geronimo.configs/activemq-broker") >> > 0) { >> + Assert.fail("deploy/list-modules failed : " + output); >> + } >> + if >> (output.indexOf("org.apache.geronimo.configs/client-corba-yoko") < 0) { >> + Assert.fail("deploy/list-modules failed : " + output); >> + } >> + } >> + + @Test >> + public void testOfflineDeployment() throws Exception { >> + //todo doesn't work now >> + /* >> + String[] args = new String[]{ "--offline", "deploy", "" }; >> + + ByteArrayOutputStream baos = new ByteArrayOutputStream(); >> + execute( command, args, null, baos ); >> + >> + if >> (baos.toString().indexOf("org.apache.geronimo.configs/activemq-broker") > 0) >> { >> + Assert.fail("deploy/list-modules failed : " + >> baos.toString()); >> + } >> + if >> (baos.toString().indexOf("org.apache.geronimo.configs/client-corba-yoko") < >> 0) { >> + Assert.fail("deploy/list-modules failed : " + >> baos.toString()); >> + } >> + */ >> + } >> + +} >> >> Propchange: >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/java/org/apache/geronimo/testsuite/deploy/DeployerTest.java >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Added: >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/resources/testng.xml >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/resources/testng.xml?rev=666781&view=auto >> >> ============================================================================== >> --- >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/resources/testng.xml >> (added) >> +++ >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/resources/testng.xml >> Wed Jun 11 11:50:45 2008 >> @@ -0,0 +1,32 @@ >> +<?xml version="1.0" encoding="UTF-8"?> >> +<!-- >> + Licensed to the Apache Software Foundation (ASF) under one >> + or more contributor license agreements. See the NOTICE file >> + distributed with this work for additional information >> + regarding copyright ownership. The ASF licenses this file >> + to you under the Apache License, Version 2.0 (the >> + "License"); you may not use this file except in compliance >> + with the License. You may obtain a copy of the License at >> + + http://www.apache.org/licenses/LICENSE-2.0 >> + + Unless required by applicable law or agreed to in writing, >> + software distributed under the License is distributed on an >> + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >> + KIND, either express or implied. See the License for the >> + specific language governing permissions and limitations >> + under the License. >> +--> >> + >> +<!-- $Rev: 514087 $ $Date: 2007-03-03 14:13:40 +0800 (Sat, 03 Mar 2007) $ >> --> >> + >> +<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> >> + >> +<suite name="Suite1" verbose="1"> >> + <test name="commands-testsuite.deploy"> >> + <packages> >> + <package name="org.apache.geronimo.testsuite.deploy"/> >> + </packages> >> + </test> >> +</suite> >> + >> >> Propchange: >> geronimo/server/trunk/testsuite/commands-testsuite/deploy/src/test/resources/testng.xml >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Added: geronimo/server/trunk/testsuite/commands-testsuite/gshell/goals.txt >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/commands-testsuite/gshell/goals.txt?rev=666781&view=auto >> >> ============================================================================== >> --- geronimo/server/trunk/testsuite/commands-testsuite/gshell/goals.txt >> (added) >> +++ geronimo/server/trunk/testsuite/commands-testsuite/gshell/goals.txt >> Wed Jun 11 11:50:45 2008 >> @@ -0,0 +1 @@ >> +clean install >> >> Propchange: >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/goals.txt >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Added: geronimo/server/trunk/testsuite/commands-testsuite/gshell/pom.xml >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/commands-testsuite/gshell/pom.xml?rev=666781&view=auto >> >> ============================================================================== >> --- geronimo/server/trunk/testsuite/commands-testsuite/gshell/pom.xml >> (added) >> +++ geronimo/server/trunk/testsuite/commands-testsuite/gshell/pom.xml Wed >> Jun 11 11:50:45 2008 >> @@ -0,0 +1,36 @@ >> +<?xml version="1.0" encoding="UTF-8"?> >> +<!-- >> + Licensed to the Apache Software Foundation (ASF) under one or more >> + contributor license agreements. See the NOTICE file distributed with >> + this work for additional information regarding copyright ownership. >> + The ASF licenses this file to You under the Apache License, Version 2.0 >> + (the "License"); you may not use this file except in compliance with >> + the License. You may obtain a copy of the License at >> + >> + http://www.apache.org/licenses/LICENSE-2.0 >> + >> + Unless required by applicable law or agreed to in writing, software >> + distributed under the License is distributed on an "AS IS" BASIS, >> + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or >> implied. >> + See the License for the specific language governing permissions and >> + limitations under the License. >> +--> >> +<project xmlns="http://maven.apache.org/POM/4.0.0" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 >> http://maven.apache.org/maven-v4_0_0.xsd"> >> + <modelVersion>4.0.0</modelVersion> >> + >> + <parent> >> + <groupId>org.apache.geronimo.testsuite</groupId> >> + <artifactId>commands-testsuite</artifactId> >> + <version>2.2-SNAPSHOT</version> >> + <relativePath>../pom.xml</relativePath> >> + </parent> >> + >> + <artifactId>gshell-testsuite</artifactId> >> + <name>Geronimo TestSuite :: Commands Testsuite :: GShell</name> >> + >> + <description> >> + Test for the gsh.bat/sh >> + </description> >> + >> +</project> >> >> Propchange: >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/pom.xml >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Added: >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/geronimo/testsuite/gshell/deploy/DeployTest.java >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/geronimo/testsuite/gshell/deploy/DeployTest.java?rev=666781&view=auto >> >> ============================================================================== >> --- >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/geronimo/testsuite/gshell/deploy/DeployTest.java >> (added) >> +++ >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/geronimo/testsuite/gshell/deploy/DeployTest.java >> Wed Jun 11 11:50:45 2008 >> @@ -0,0 +1,100 @@ >> +/** >> + * Licensed to the Apache Software Foundation (ASF) under one >> + * or more contributor license agreements. See the NOTICE file >> + * distributed with this work for additional information >> + * regarding copyright ownership. The ASF licenses this file >> + * to you under the Apache License, Version 2.0 (the >> + * "License"); you may not use this file except in compliance >> + * with the License. You may obtain a copy of the License at >> + * >> + * http://www.apache.org/licenses/LICENSE-2.0 >> + * >> + * Unless required by applicable law or agreed to in writing, >> + * software distributed under the License is distributed on an >> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >> + * KIND, either express or implied. See the License for the >> + * specific language governing permissions and limitations >> + * under the License. >> + */ >> + >> +package org.apache.geronimo.testsuite.gshell.deploy; >> + >> +import java.io.ByteArrayOutputStream; >> +import java.util.ArrayList; >> +import java.util.Arrays; >> +import java.util.List; >> + >> +import org.apache.geronimo.testsupport.commands.CommandTestSupport; >> +import org.testng.Assert; >> +import org.testng.annotations.Test; >> + >> [EMAIL PROTECTED] >> +public class DeployTest extends CommandTestSupport { >> + + private static final String UP = "-u system -w manager"; >> + + protected String execute(String[] args) throws Exception { >> + ByteArrayOutputStream baos = new ByteArrayOutputStream(); >> + List<String> cmd = new ArrayList<String>(); + >> cmd.addAll(Arrays.asList("-c")); >> + if (args != null) { >> + cmd.addAll(Arrays.asList(args)); >> + } >> + execute(CommandTestSupport.GSH, cmd, null, baos); >> + return baos.toString(); >> + } >> + + @Test >> + public void testListAllModules() throws Exception { >> + String[] args = new String[]{ "deploy/list-modules " + UP }; >> + + String output = execute(args); >> + >> + if (output.indexOf("org.apache.geronimo.configs/activemq-broker") >> < 0) { >> + Assert.fail("deploy/list-modules failed : " + output); >> + } >> + } >> + + @Test >> + public void testListStartedModules() throws Exception { >> + String[] args = new String[]{ "deploy/list-modules " + UP + " >> --started" }; >> + + String output = execute(args); >> + >> + if (output.indexOf("org.apache.geronimo.configs/activemq-broker") >> < 0) { >> + Assert.fail("deploy/list-modules failed : " + output); >> + } >> + if >> (output.indexOf("org.apache.geronimo.configs/client-corba-yoko") > 0) { >> + Assert.fail("deploy/list-modules failed : " + output); >> + } >> + } >> + + @Test >> + public void testListStoppedModules() throws Exception { >> + String[] args = new String[]{ "deploy/list-modules " + UP + " >> --stopped" }; >> + + String output = execute(args); >> + >> + if (output.indexOf("org.apache.geronimo.configs/activemq-broker") >> > 0) { >> + Assert.fail("deploy/list-modules failed : " + output); >> + } >> + if >> (output.indexOf("org.apache.geronimo.configs/client-corba-yoko") < 0) { >> + Assert.fail("deploy/list-modules failed : " + output); >> + } >> + } >> + + public void testListAllPlugins() throws Exception { >> + //todo this testcase fails >> + /* >> + String[] args = new String[]{ "-c", "deploy/list-plugins -u >> system -w manager" }; >> + + ByteArrayOutputStream baos = new ByteArrayOutputStream(); >> + execute( command, args, null, baos ); >> + >> + if >> (baos.toString().indexOf("org.apache.geronimo.configs/activemq-broker") < 0) >> { >> + Assert.fail("deploy/list-modules failed : " + >> baos.toString()); >> + } >> + */ >> + } >> + >> +} >> >> Propchange: >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/java/org/apache/geronimo/testsuite/gshell/deploy/DeployTest.java >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Added: >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/resources/testng.xml >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/resources/testng.xml?rev=666781&view=auto >> >> ============================================================================== >> --- >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/resources/testng.xml >> (added) >> +++ >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/resources/testng.xml >> Wed Jun 11 11:50:45 2008 >> @@ -0,0 +1,32 @@ >> +<?xml version="1.0" encoding="UTF-8"?> >> +<!-- >> + Licensed to the Apache Software Foundation (ASF) under one >> + or more contributor license agreements. See the NOTICE file >> + distributed with this work for additional information >> + regarding copyright ownership. The ASF licenses this file >> + to you under the Apache License, Version 2.0 (the >> + "License"); you may not use this file except in compliance >> + with the License. You may obtain a copy of the License at >> + + http://www.apache.org/licenses/LICENSE-2.0 >> + + Unless required by applicable law or agreed to in writing, >> + software distributed under the License is distributed on an >> + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >> + KIND, either express or implied. See the License for the >> + specific language governing permissions and limitations >> + under the License. >> +--> >> + >> +<!-- $Rev: 514087 $ $Date: 2007-03-03 14:13:40 +0800 (Sat, 03 Mar 2007) $ >> --> >> + >> +<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd"> >> + >> +<suite name="Suite1" verbose="1"> >> + <test name="commands-testsuite.gshell"> >> + <packages> >> + <package name="org.apache.geronimo.testsuite.gshell.deploy"/> >> + </packages> >> + </test> >> +</suite> >> + >> >> Propchange: >> geronimo/server/trunk/testsuite/commands-testsuite/gshell/src/test/resources/testng.xml >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Added: geronimo/server/trunk/testsuite/commands-testsuite/pom.xml >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsuite/commands-testsuite/pom.xml?rev=666781&view=auto >> >> ============================================================================== >> --- geronimo/server/trunk/testsuite/commands-testsuite/pom.xml (added) >> +++ geronimo/server/trunk/testsuite/commands-testsuite/pom.xml Wed Jun 11 >> 11:50:45 2008 >> @@ -0,0 +1,85 @@ >> +<?xml version="1.0" encoding="UTF-8"?> >> +<!-- >> + Licensed to the Apache Software Foundation (ASF) under one >> + or more contributor license agreements. See the NOTICE file >> + distributed with this work for additional information >> + regarding copyright ownership. The ASF licenses this file >> + to you under the Apache License, Version 2.0 (the >> + "License"); you may not use this file except in compliance >> + with the License. You may obtain a copy of the License at >> + >> + http://www.apache.org/licenses/LICENSE-2.0 >> + >> + Unless required by applicable law or agreed to in writing, >> + software distributed under the License is distributed on an >> + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >> + KIND, either express or implied. See the License for the >> + specific language governing permissions and limitations >> + under the License. >> +--> >> + >> +<project xmlns="http://maven.apache.org/POM/4.0.0" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 >> http://maven.apache.org/maven-v4_0_0.xsd"> >> + >> + <modelVersion>4.0.0</modelVersion> >> + >> + <parent> >> + <groupId>org.apache.geronimo.testsuite</groupId> >> + <artifactId>testsuite</artifactId> >> + <version>2.2-SNAPSHOT</version> >> + </parent> >> + >> + <artifactId>commands-testsuite</artifactId> >> + <name>Geronimo TestSuite :: Commands TestSuite</name> >> + <packaging>pom</packaging> >> + + <description> >> + Test Geronimo Commands Functions >> + </description> >> + + <dependencies> >> + <dependency> >> + <groupId>org.apache.geronimo.testsupport</groupId> >> + <artifactId>testsupport-commands</artifactId> >> + <version>${version}</version> >> + </dependency> >> + </dependencies> + + <build> >> + <pluginManagement> >> + <plugins> >> + <plugin> >> + <groupId>org.apache.maven.plugins</groupId> >> + <artifactId>maven-surefire-plugin</artifactId> >> + <configuration> >> + <suiteXmlFiles> >> + >> <suiteXmlFile>${project.build.testOutputDirectory}/testng.xml</suiteXmlFile> >> + </suiteXmlFiles> >> + <systemProperties> >> + <property> >> + <name>geronimoVersion</name> >> + <value>${version}</value> >> + </property> >> + </systemProperties> >> + </configuration> >> + </plugin> >> + </plugins> >> + </pluginManagement> >> + + <plugins> >> + <plugin> >> + <groupId>org.apache.geronimo.buildsupport</groupId> >> + <artifactId>testsuite-maven-plugin</artifactId> >> + <inherited>false</inherited> >> + <executions> >> + <execution> >> + <phase>install</phase> >> + <goals> >> + <goal>generate-surefire-xml</goal> >> + </goals> >> + </execution> >> + </executions> >> + </plugin> >> + </plugins> >> + </build> >> + >> +</project> >> >> Propchange: geronimo/server/trunk/testsuite/commands-testsuite/pom.xml >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Modified: geronimo/server/trunk/testsupport/pom.xml >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsupport/pom.xml?rev=666781&r1=666780&r2=666781&view=diff >> >> ============================================================================== >> --- geronimo/server/trunk/testsupport/pom.xml (original) >> +++ geronimo/server/trunk/testsupport/pom.xml Wed Jun 11 11:50:45 2008 >> @@ -42,6 +42,7 @@ >> <modules> >> <module>testsupport-common</module> >> <module>testsupport-selenium</module> >> + <module>testsupport-commands</module> >> <module>testsupport-packaging</module> >> <module>test-deployment-j2ee_1.3</module> >> <module>test-deployment-j2ee_1.4</module> >> >> Added: geronimo/server/trunk/testsupport/testsupport-commands/pom.xml >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsupport/testsupport-commands/pom.xml?rev=666781&view=auto >> >> ============================================================================== >> --- geronimo/server/trunk/testsupport/testsupport-commands/pom.xml (added) >> +++ geronimo/server/trunk/testsupport/testsupport-commands/pom.xml Wed Jun >> 11 11:50:45 2008 >> @@ -0,0 +1,59 @@ >> +<?xml version="1.0" encoding="UTF-8"?> >> +<!-- >> + Licensed to the Apache Software Foundation (ASF) under one >> + or more contributor license agreements. See the NOTICE file >> + distributed with this work for additional information >> + regarding copyright ownership. The ASF licenses this file >> + to you under the Apache License, Version 2.0 (the >> + "License"); you may not use this file except in compliance >> + with the License. You may obtain a copy of the License at >> + + http://www.apache.org/licenses/LICENSE-2.0 >> + + Unless required by applicable law or agreed to in writing, >> + software distributed under the License is distributed on an >> + "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >> + KIND, either express or implied. See the License for the >> + specific language governing permissions and limitations >> + under the License. >> +--> >> +<!-- $Rev: 649297 $ $Date: 2008-04-17 17:54:06 -0400 (Thu, 17 Apr 2008) $ >> --> >> +<project xmlns="http://maven.apache.org/POM/4.0.0" >> xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >> xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 >> http://maven.apache.org/maven-v4_0_0.xsd"> >> + <modelVersion>4.0.0</modelVersion> >> + + <parent> >> + <groupId>org.apache.geronimo.testsupport</groupId> >> + <artifactId>testsupport</artifactId> >> + <version>2.2-SNAPSHOT</version> >> + </parent> >> + + <artifactId>testsupport-commands</artifactId> >> + <name>Geronimo Test Support :: Commands</name> >> + + <dependencies> >> + <dependency> >> + <groupId>junit</groupId> >> + <artifactId>junit</artifactId> >> + <scope>compile</scope> >> + </dependency> >> + >> + <dependency> >> + <groupId>org.apache.geronimo.testsupport</groupId> >> + <artifactId>testsupport-common</artifactId> >> + <version>${version}</version> >> + <scope>compile</scope> >> + </dependency> >> + + <dependency> >> + <groupId>org.apache.geronimo.buildsupport</groupId> >> + <artifactId>geronimo-maven-plugin</artifactId> >> + <version>${version}</version> >> + </dependency> >> + + <dependency> >> + <groupId>org.apache.ant</groupId> >> + <artifactId>ant</artifactId> >> + </dependency> >> + </dependencies> >> + >> +</project> >> >> Propchange: geronimo/server/trunk/testsupport/testsupport-commands/pom.xml >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> Added: >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/apache/geronimo/testsupport/commands/CommandTestSupport.java >> URL: >> http://svn.apache.org/viewvc/geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/apache/geronimo/testsupport/commands/CommandTestSupport.java?rev=666781&view=auto >> >> ============================================================================== >> --- >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/apache/geronimo/testsupport/commands/CommandTestSupport.java >> (added) >> +++ >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/apache/geronimo/testsupport/commands/CommandTestSupport.java >> Wed Jun 11 11:50:45 2008 >> @@ -0,0 +1,127 @@ >> +/** >> + * Licensed to the Apache Software Foundation (ASF) under one >> + * or more contributor license agreements. See the NOTICE file >> + * distributed with this work for additional information >> + * regarding copyright ownership. The ASF licenses this file >> + * to you under the Apache License, Version 2.0 (the >> + * "License"); you may not use this file except in compliance >> + * with the License. You may obtain a copy of the License at >> + * >> + * http://www.apache.org/licenses/LICENSE-2.0 >> + * >> + * Unless required by applicable law or agreed to in writing, >> + * software distributed under the License is distributed on an >> + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY >> + * KIND, either express or implied. See the License for the >> + * specific language governing permissions and limitations >> + * under the License. >> + */ >> +package org.apache.geronimo.testsupport.commands; >> + >> +import java.io.InputStream; >> +import java.io.OutputStream; >> +import java.util.ArrayList; >> +import java.util.Arrays; >> +import java.util.Collections; >> +import java.util.List; >> + >> +import org.apache.geronimo.mavenplugins.geronimo.ServerProxy; >> +import org.apache.tools.ant.taskdefs.Execute; >> +import org.apache.tools.ant.taskdefs.ExecuteStreamHandler; >> +import org.apache.tools.ant.taskdefs.ExecuteWatchdog; >> +import org.apache.tools.ant.taskdefs.PumpStreamHandler; >> +import org.apache.tools.ant.taskdefs.condition.Os; >> + >> +public class CommandTestSupport { >> + + public static final String GSH = "gsh"; >> + public static final String DEPLOY = "deploy"; >> + + protected static final long timeout = 30000; + protected >> static String geronimoHome; >> + + static { >> + geronimoHome = getGeronimoHome(); >> + } >> + + private static String getGeronimoHome() { >> + ServerProxy server = null; >> + try { >> + server = new ServerProxy("localhost", 1099, "system", >> "manager"); + } catch (Exception e) { >> + throw new RuntimeException("Unable to setup ServerProxy", e); >> + } >> + String home = server.getGeronimoHome(); >> + if (server.getLastError() != null) { >> + throw new RuntimeException("Failed to get Geronimo home", >> server.getLastError()); >> + } else { >> + return home; >> + } >> + } >> + + public CommandTestSupport() { >> + } >> + + public void execute(String command, String[] args, InputStream >> in, OutputStream out) throws Exception { >> + execute(command, (args == null) ? null : Arrays.asList(args), in, >> out); >> + } >> + + public void execute(String command, List<String> args, >> InputStream in, OutputStream out) throws Exception { >> + List<String> cmdLine = new ArrayList<String>(); >> + if (isWindows()) { >> + cmdLine.add("cmd.exe"); >> + cmdLine.add("/c"); >> + } >> + cmdLine.add(resolveCommandForOS(command)); >> + // add command-specific arguments >> + cmdLine.addAll(getCommandArguments(command)); >> + // add user arguments >> + if (args != null) { >> + cmdLine.addAll(args); >> + } >> + + ExecuteWatchdog watchdog = new ExecuteWatchdog( timeout >> ); >> + ExecuteStreamHandler streamHandler = new PumpStreamHandler( out, >> out, in ); >> + Execute exec = new Execute( streamHandler, watchdog ); >> + exec.setCommandline( cmdLine.toArray(new String[] {}) ); >> + List<String> env = getCommandEnvironment(command); >> + if (!env.isEmpty()) { >> + exec.setEnvironment(env.toArray(new String[] {}) ); >> + } >> + exec.execute(); >> + } >> + + protected List<String> getCommandArguments(String command) { >> + if (GSH.equals(command)) { >> + return Arrays.asList("-T", "false"); >> + } else { >> + return Collections.emptyList(); >> + } >> + } >> + + protected List<String> getCommandEnvironment(String command) >> { >> + if (DEPLOY.equals(command)) { >> + //this makes the output can be captured in Linux >> + return >> Arrays.asList("JAVA_OPTS=-Djline.terminal=jline.UnsupportedTerminal"); >> + } else { >> + return Collections.emptyList(); >> + } >> + } >> + >> + protected String resolveCommandForOS(String command) { + >> if (isWindows()) { >> + return geronimoHome + "/bin/" + command + ".bat"; >> + } else { >> + if (GSH.equals(command)) { >> + return geronimoHome + "/bin/" + command; >> + } else { >> + return geronimoHome + "/bin/" + command + ".sh"; >> + } >> + } + } >> + + public boolean isWindows() { >> + return Os.isFamily("windows"); >> + } >> + +} >> >> Propchange: >> geronimo/server/trunk/testsupport/testsupport-commands/src/main/java/org/apache/geronimo/testsupport/commands/CommandTestSupport.java >> >> ------------------------------------------------------------------------------ >> svn:eol-style = native >> >> >> >
