Skip to content

Revamp java test projects #8706

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Jun 30, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions .github/dependabot.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,3 +26,46 @@ updates:
schedule:
interval: "daily"
target-branch: "v3.8.x"
# Maintain dependencies for Java test projects
- package-ecosystem: "maven"
directory: "/deps/rabbitmq_mqtt/test/java_SUITE_data"
schedule:
interval: "daily"
target-branch: "main"
ignore:
- dependency-name: "ch.qos.logback:logback-classic"
versions: [ "[1.3,)" ]
- package-ecosystem: "maven"
directory: "deps/rabbitmq_stream/test/rabbit_stream_SUITE_data"
schedule:
interval: "daily"
target-branch: "main"
ignore:
- dependency-name: "ch.qos.logback:logback-classic"
versions: [ "[1.3,)" ]
- package-ecosystem: "maven"
directory: "deps/rabbitmq_stream_management/test/http_SUITE_data"
schedule:
interval: "daily"
target-branch: "main"
ignore:
- dependency-name: "ch.qos.logback:logback-classic"
versions: [ "[1.3,)" ]
- package-ecosystem: "maven"
directory: "deps/rabbitmq_amqp1_0/test/system_SUITE_data/java-tests"
schedule:
interval: "daily"
target-branch: "main"
ignore:
- dependency-name: "ch.qos.logback:logback-classic"
versions: [ "[1.3,)" ]
- package-ecosystem: "maven"
directory: "deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_spring_boot"
schedule:
interval: "daily"
target-branch: "main"
- package-ecosystem: "maven"
directory: "deps/rabbitmq_auth_backend_http/examples/rabbitmq_auth_backend_spring_boot_kotlin"
schedule:
interval: "daily"
target-branch: "main"
50 changes: 38 additions & 12 deletions deps/rabbitmq_amqp1_0/test/system_SUITE_data/java-tests/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -7,32 +7,44 @@
<version>1.0-SNAPSHOT</version>
<name>rabbitmq-amqp1.0-java-tests</name>
<url>https://www.rabbitmq.com</url>
<properties>
<junit.jupiter.version>5.9.3</junit.jupiter.version>
<qpid-jms-client.version>2.3.0</qpid-jms-client.version>
<logback.version>1.2.11</logback.version>
<spotless.version>2.24.0</spotless.version>
<google-java-format.version>1.17.0</google-java-format.version>
<maven-compiler-plugin.version>3.11.0</maven-compiler-plugin.version>
<maven-surefire-plugin.version>3.1.2</maven-surefire-plugin.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.1</version>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junit.jupiter.version}</version>
<scope>test</scope>
</dependency>
<!-- <dependency> -->
<!-- <groupId>org.apache.qpid</groupId> -->
<!-- <artifactId>proton-j</artifactId> -->
<!-- <version>0.13.0</version> -->
<!-- <scope>test</scope> -->
<!-- </dependency> -->

<dependency>
<groupId>org.apache.qpid</groupId>
<artifactId>qpid-jms-client</artifactId>
<version>0.31.0</version>
<version>${qpid-jms-client.version}</version>
<scope>test</scope>
</dependency>

<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version>
<scope>test</scope>
</dependency>

</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.1</version>
<version>${maven-compiler-plugin.version}</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
Expand All @@ -41,7 +53,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.2</version>
<version>${maven-surefire-plugin.version}</version>
<configuration>
<systemPropertyVariables>
<rmq_broker_uri>${rmq_broker_uri}</rmq_broker_uri>
Expand All @@ -53,6 +65,20 @@
<argLine>-Djdk.net.URLClassPath.disableClassPathURLCheck=true</argLine>
</configuration>
</plugin>
<plugin>
<groupId>com.diffplug.spotless</groupId>
<artifactId>spotless-maven-plugin</artifactId>
<version>${spotless.version}</version>
<configuration>
<java>
<googleJavaFormat>
<version>${google-java-format.version}</version>
<style>GOOGLE</style>
</googleJavaFormat>
</java>
</configuration>
</plugin>

</plugins>
</build>
</project>
Original file line number Diff line number Diff line change
Expand Up @@ -2,83 +2,50 @@

package com.rabbitmq.amqp1_0.tests.jms;

import java.util.*;

import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;

import javax.jms.Connection;
import javax.jms.ConnectionFactory;
import javax.jms.DeliveryMode;
import javax.jms.Destination;
import javax.jms.ExceptionListener;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageConsumer;
import javax.jms.MessageProducer;
import javax.jms.Session;
import javax.jms.TextMessage;
import jakarta.jms.*;
import java.util.*;
import javax.naming.Context;
import javax.naming.InitialContext;

/**
* Unit test for simple App.
*/
public class RoundTripTest
extends TestCase
{
public static final String ADDRESS = "/jms-roundtrip-q";
public static final String PAYLOAD = "Payload";
import org.junit.jupiter.api.Test;

/**
* Create the test case
*
* @param testName name of the test case
*/
public RoundTripTest(String testName)
{
super(testName);
}

/**
* @return the suite of tests being tested
*/
public static Test suite()
{
return new TestSuite(RoundTripTest.class);
}
/** Unit test for simple App. */
public class RoundTripTest {

public void test_roundtrip () throws Exception
{
String uri = System.getProperty("rmq_broker_uri");
String address = uri + ADDRESS;
Hashtable<Object, Object> env = new Hashtable<Object, Object>();
env.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.qpid.jms.jndi.JmsInitialContextFactory");
env.put("connectionfactory.myFactoryLookup", uri);
env.put("queue.myQueueLookup", "my-queue");
env.put("jms.sendTimeout", 5);
env.put("jms.requestTimeout", 5);
javax.naming.Context context = new javax.naming.InitialContext(env);
@Test
public void test_roundtrip() throws Exception {
String uri = System.getProperty("rmq_broker_uri", "amqp://localhost:5672");
Hashtable<Object, Object> env = new Hashtable<>();
env.put(Context.INITIAL_CONTEXT_FACTORY, "org.apache.qpid.jms.jndi.JmsInitialContextFactory");
env.put("connectionfactory.myFactoryLookup", uri);
env.put("queue.myQueueLookup", "my-queue");
env.put("jms.sendTimeout", 5);
env.put("jms.requestTimeout", 5);
javax.naming.Context context = new javax.naming.InitialContext(env);

assertNotNull(uri);
assertNotNull(uri);

ConnectionFactory factory = (ConnectionFactory) context.lookup("myFactoryLookup");
Destination queue = (Destination) context.lookup("myQueueLookup");
ConnectionFactory factory = (ConnectionFactory) context.lookup("myFactoryLookup");
Destination queue = (Destination) context.lookup("myQueueLookup");

Connection connection = factory.createConnection("guest", "guest");
connection.start();
try (Connection connection = factory.createConnection("guest", "guest")) {
connection.start();

Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);

MessageProducer messageProducer = session.createProducer(queue);
MessageConsumer messageConsumer = session.createConsumer(queue);
MessageProducer messageProducer = session.createProducer(queue);
MessageConsumer messageConsumer = session.createConsumer(queue);

TextMessage message = session.createTextMessage("Hello world!");
messageProducer.send(message, DeliveryMode.NON_PERSISTENT,
Message.DEFAULT_PRIORITY, Message.DEFAULT_TIME_TO_LIVE);
TextMessage receivedMessage = (TextMessage) messageConsumer.receive(2000L);
TextMessage message = session.createTextMessage("Hello world!");
messageProducer.send(
message,
DeliveryMode.NON_PERSISTENT,
Message.DEFAULT_PRIORITY,
Message.DEFAULT_TIME_TO_LIVE);
TextMessage receivedMessage = (TextMessage) messageConsumer.receive(2000L);

assertEquals(message.getText(), receivedMessage.getText());
assertEquals(message.getText(), receivedMessage.getText());
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>

<logger name="com.rabbitmq" level="info" />

<root level="warn">
<appender-ref ref="STDOUT" />
</root>
</configuration>
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,13 @@
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.4.1</version>
<version>2.7.3</version>
</parent>

<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<junit.jupiter.version>5.9.3</junit.jupiter.version>
</properties>

<groupId>com.rabbitmq.examples</groupId>
Expand All @@ -54,11 +55,12 @@
</dependency>

<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.13.1</version>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-params</artifactId>
<version>${junit.jupiter.version}</version>
<scope>test</scope>
</dependency>

</dependencies>

<build>
Expand Down
Loading