You must build and install qpid-interop-test before you can run the tests.
By default, qpid-interop-test will install to /usr/local, but you can set any non-priviedged directory as the install prefix, for example $HOME/install.
The following pre-requisites must be installed before you build and install qpid-interop-test:
The following are not required, but if installed and present, will be tested:
Pre-requisites can be installed using the standard system package manager (yum, dnf, apt-get etc.) OR built from source and installed to the same prefix as qpid-interop-test.
For example, to install standard packages on Fedora 25:
sudo dnf install qpid-jms-client nodejs-rhea npm maven jsoncpp-devel
These are the install steps:
git clone https://git-wip-us.apache.org/repos/asf/qpid-proton.git cd qpid-proton
mkdir build cd build
cmake .. make sudo make install
cmake -DCMAKE_INSTALL_PREFIX=/abs/path/to/local/install/dir .. make install cd ..
mvn -DskipTests install cd ..
git clone https://git-wip-us.apache.org/repos/asf/qpid-python.git cd qpid-python
sudo python setup.py install
python setup.py install --prefix=/abs/path/to/local/install/dir cd ..
git clone https://git-wip-us.apache.org/repos/asf/qpid-jms.git cd qpid-jms mvn -DskipTests install cd ..
git clone https://github.com/grs/rhea.git cd rhea npm install debug * NOTE: This step requires root privileges, I can't find a way around it (as it needs to install the link into the folders where node is installed, and I can't get a local link to work): sudo npm link cd ..
git clone https://git-wip-us.apache.org/repos/asf/qpid-interop-test.git cd qpid-interop-test mkdir build cd build cmake -DPROTON_INSTALL_DIR=<install-dir> -DCMAKE_INSTALL_PREFIX=<install-dir> .. make install
The following are possible brokers to install or build for testing against:
TODO: Helpful hints on obtaining/building Make the following changes to the broker.xml file:
configuration.core.address-settings.address-setting for match="#": add the following: <auto-create-jms-queues>true</auto-create-jms-queues>
TODO: Helpful hints on obtaining/building Make the following changes to the activemq.xml config file:
broker.transportConnectors.transportConnector for name "amqp": add "wireFormat.allowNonSaslConnections=true"; ie: <transportConnector name="amqp" uri="amqp://0.0.0.0:5672?maximumConnections=1000&wireFormat.maxFrameSize=1048576000&wireFormat.allowNonSaslConnections=true"/>
TODO: Helpful hints on obtaining/building When starting the broker, configure or use the following parameters:
* --load-module amqp : will enable the AMQP 1.0 protocol * --queue-pattern jms.queue.qpid-interop: will automatically create queues using this prefix as needed * --auth no : will disable authentication (which these tests do not use).
TODO: Helpful hints on obtaining/building TODO: Not yet tested
TODO: Helpful hints on obtaining/building
The config.sh script is in the build directory
source build/config.sh
python -m qpid_interop_test.amqp_types_test python -m qpid_interop_test.jms_messages_test ...