You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ri...@apache.org on 2007/05/18 15:51:00 UTC
svn commit: r539470 - in /incubator/qpid/branches/M2/java/broker: pom.xml
python-test.xml src/main/java/org/apache/qpid/server/Main.java
src/test/java/org/apache/qpid/server/RunBrokerWithCommand.java
Author: ritchiem
Date: Fri May 18 06:50:59 2007
New Revision: 539470
URL: http://svn.apache.org/viewvc?view=rev&rev=539470
Log:
QPID-401 Integrated python tests with maven tested on windows CMD.exe and linux FC5
Added:
incubator/qpid/branches/M2/java/broker/python-test.xml (with props)
incubator/qpid/branches/M2/java/broker/src/test/java/org/apache/qpid/server/RunBrokerWithCommand.java (with props)
Modified:
incubator/qpid/branches/M2/java/broker/pom.xml
incubator/qpid/branches/M2/java/broker/src/main/java/org/apache/qpid/server/Main.java
Modified: incubator/qpid/branches/M2/java/broker/pom.xml
URL: http://svn.apache.org/viewvc/incubator/qpid/branches/M2/java/broker/pom.xml?view=diff&rev=539470&r1=539469&r2=539470
==============================================================================
--- incubator/qpid/branches/M2/java/broker/pom.xml (original)
+++ incubator/qpid/branches/M2/java/broker/pom.xml Fri May 18 06:50:59 2007
@@ -120,6 +120,7 @@
</configuration>
</plugin>
+
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
@@ -144,6 +145,52 @@
</includes>
</testResource>
</testResources>
+
+ <pluginManagement>
+ <plugins>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>${antrun.version}</version>
+ <dependencies>
+ <dependency>
+ <groupId>ant</groupId>
+ <artifactId>ant-nodeps</artifactId>
+ <version>1.6.5</version>
+ </dependency>
+ </dependencies>
+
+ <executions>
+ <execution>
+ <id>python_test</id>
+ <phase>test</phase>
+ <configuration>
+ <tasks>
+
+ <condition property="broker.dir"
+ value="${user.dir}${file.separator}..${file.separator}broker"
+ else="${user.dir}">
+ <equals arg1="${topDirectoryLocation}" arg2="." />
+ </condition>
+
+ <property name="command"
+ value="bash -c 'python run-tests -v -I java_failing.txt'"/>
+
+ <ant antfile="python-test.xml" inheritRefs="true">
+ <target name="run-tests" />
+ </ant>
+
+ </tasks>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </pluginManagement>
+
</build>
Added: incubator/qpid/branches/M2/java/broker/python-test.xml
URL: http://svn.apache.org/viewvc/incubator/qpid/branches/M2/java/broker/python-test.xml?view=auto&rev=539470
==============================================================================
--- incubator/qpid/branches/M2/java/broker/python-test.xml (added)
+++ incubator/qpid/branches/M2/java/broker/python-test.xml Fri May 18 06:50:59 2007
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!-- ====================================================================== -->
+<!-- Ant build file (http://ant.apache.org/) for Ant 1.6.2 or above. -->
+<!-- ====================================================================== -->
+
+<project basedir="." default="default">
+
+ <target name="default" >
+ <echo message="Used via maven to run python tests."/>
+ </target>
+
+ <property name="pythondir" value="../../python"/>
+
+ <target name="run-tests" >
+
+ <echo message="Starting Broker with command"/>
+
+ <java classname="org.apache.qpid.server.RunBrokerWithCommand"
+ fork="true"
+ dir="${pythondir}"
+ failonerror="true"
+ >
+ <arg value="${command}"/>
+
+ <classpath refid="maven.test.classpath"/>
+ <sysproperty key="QPID_HOME" value="${broker.dir}"/>
+ <sysproperty key="QPID_WORK" value="${broker.dir}${file.separator}target"/>
+ </java>
+
+ </target>
+</project>
Propchange: incubator/qpid/branches/M2/java/broker/python-test.xml
------------------------------------------------------------------------------
svn:executable = *
Modified: incubator/qpid/branches/M2/java/broker/src/main/java/org/apache/qpid/server/Main.java
URL: http://svn.apache.org/viewvc/incubator/qpid/branches/M2/java/broker/src/main/java/org/apache/qpid/server/Main.java?view=diff&rev=539470&r1=539469&r2=539470
==============================================================================
--- incubator/qpid/branches/M2/java/broker/src/main/java/org/apache/qpid/server/Main.java (original)
+++ incubator/qpid/branches/M2/java/broker/src/main/java/org/apache/qpid/server/Main.java Fri May 18 06:50:59 2007
@@ -24,6 +24,7 @@
import java.io.IOException;
import java.net.InetAddress;
import java.net.InetSocketAddress;
+import java.net.BindException;
import java.util.Collection;
import java.util.List;
import java.util.StringTokenizer;
@@ -160,7 +161,8 @@
}
else if (commandLine.hasOption("v"))
{
- String ver = "Qpid 0.9.0.0";
+ String ver = QpidProperties.getVersionString();
+
StringBuilder protocol = new StringBuilder("AMQP version(s) [major.minor]: ");
boolean first = true;
@@ -333,7 +335,7 @@
}
}
- protected void bind(int port, ConnectorConfiguration connectorConfig)
+ protected void bind(int port, ConnectorConfiguration connectorConfig) throws BindException
{
String bindAddr = commandLine.getOptionValue("b");
if (bindAddr == null)
@@ -401,6 +403,8 @@
catch (Exception e)
{
_logger.error("Unable to bind service to registry: " + e, e);
+ //fixme this need tidying up
+ throw new BindException(e.getMessage());
}
}
Added: incubator/qpid/branches/M2/java/broker/src/test/java/org/apache/qpid/server/RunBrokerWithCommand.java
URL: http://svn.apache.org/viewvc/incubator/qpid/branches/M2/java/broker/src/test/java/org/apache/qpid/server/RunBrokerWithCommand.java?view=auto&rev=539470
==============================================================================
--- incubator/qpid/branches/M2/java/broker/src/test/java/org/apache/qpid/server/RunBrokerWithCommand.java (added)
+++ incubator/qpid/branches/M2/java/broker/src/test/java/org/apache/qpid/server/RunBrokerWithCommand.java Fri May 18 06:50:59 2007
@@ -0,0 +1,130 @@
+/*
+ * 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.qpid.server;
+
+import org.apache.log4j.Logger;
+import org.apache.log4j.Level;
+
+import java.io.InputStream;
+import java.io.BufferedReader;
+import java.io.InputStreamReader;
+import java.io.IOException;
+
+public class RunBrokerWithCommand
+{
+ public static void main(String[] args)
+ {
+ //Start broker
+
+ try
+ {
+
+ String[] fudge = new String[1];
+ fudge[0] = "-v";
+ new Main(fudge).startup();
+ }
+ catch (Exception e)
+ {
+ System.out.println("Unable to start broker due to: " + e.getMessage());
+
+ e.printStackTrace();
+ exit(1);
+ }
+
+ Logger.getRootLogger().setLevel(Level.ERROR);
+
+ //run command
+ try
+ {
+ Process task = Runtime.getRuntime().exec(args[0]);
+ System.out.println("Started Proccess: " + args[0]);
+
+ InputStream inputStream = task.getInputStream();
+
+ InputStream errorStream = task.getErrorStream();
+
+ Thread out = new Thread(new Outputter("[OUT]", new BufferedReader(new InputStreamReader(inputStream))));
+ Thread err = new Thread(new Outputter("[ERR]", new BufferedReader(new InputStreamReader(errorStream))));
+
+ out.start();
+ err.start();
+
+ out.join();
+ err.join();
+
+ System.out.println("Waiting for process to exit: " + args[0]);
+ task.waitFor();
+ System.out.println("Done Proccess: " + args[0]);
+
+ }
+ catch (IOException e)
+ {
+ System.out.println("Proccess had problems: " + e.getMessage());
+ exit(1);
+ }
+ catch (InterruptedException e)
+ {
+ System.out.println("Proccess had problems: " + e.getMessage());
+
+ exit(1);
+ }
+
+
+ exit(0);
+ }
+
+ private static void exit(int i)
+ {
+ Logger.getRootLogger().setLevel(Level.INFO);
+ System.exit(i);
+ }
+
+ static class Outputter implements Runnable
+ {
+
+ BufferedReader reader;
+ String prefix;
+
+ Outputter(String s, BufferedReader r)
+ {
+ prefix = s;
+ reader = r;
+ }
+
+ public void run()
+ {
+ String line;
+ try
+ {
+ while ((line = reader.readLine()) != null)
+ {
+ System.out.println(prefix + line);
+ }
+ }
+ catch (IOException e)
+ {
+ System.out.println("Error occured reading; " + e.getMessage());
+ }
+ }
+
+ }
+
+}
Propchange: incubator/qpid/branches/M2/java/broker/src/test/java/org/apache/qpid/server/RunBrokerWithCommand.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: incubator/qpid/branches/M2/java/broker/src/test/java/org/apache/qpid/server/RunBrokerWithCommand.java
------------------------------------------------------------------------------
svn:keywords = Rev Date