com.mariocairone.mule:testcontainers-mule

A TestConteiners Module to run Mule ESB Integration Tests

License

License

Categories

Categories

Container
GroupId

GroupId

com.mariocairone.mule
ArtifactId

ArtifactId

testcontainers-mule
Last Version

Last Version

1.0.1
Release Date

Release Date

Type

Type

jar
Description

Description

com.mariocairone.mule:testcontainers-mule
A TestConteiners Module to run Mule ESB Integration Tests
Project URL

Project URL

https://github.com/mariocairone/testcontainers-mule
Source Code Management

Source Code Management

http://github.com/mariocairone/testcontainers-mule/tree/master

Download testcontainers-mule

How to add to project

<!-- https://jarcasting.com/artifacts/com.mariocairone.mule/testcontainers-mule/ -->
<dependency>
    <groupId>com.mariocairone.mule</groupId>
    <artifactId>testcontainers-mule</artifactId>
    <version>1.0.1</version>
</dependency>
// https://jarcasting.com/artifacts/com.mariocairone.mule/testcontainers-mule/
implementation 'com.mariocairone.mule:testcontainers-mule:1.0.1'
// https://jarcasting.com/artifacts/com.mariocairone.mule/testcontainers-mule/
implementation ("com.mariocairone.mule:testcontainers-mule:1.0.1")
'com.mariocairone.mule:testcontainers-mule:jar:1.0.1'
<dependency org="com.mariocairone.mule" name="testcontainers-mule" rev="1.0.1">
  <artifact name="testcontainers-mule" type="jar" />
</dependency>
@Grapes(
@Grab(group='com.mariocairone.mule', module='testcontainers-mule', version='1.0.1')
)
libraryDependencies += "com.mariocairone.mule" % "testcontainers-mule" % "1.0.1"
[com.mariocairone.mule/testcontainers-mule "1.0.1"]

Dependencies

compile (1)

Group / Artifact Type Version
org.testcontainers : testcontainers jar 1.12.1

Project Modules

There are no modules declared in this project.

TestContainers Mule Module

Maven Central GitHub GitHub issues GitHub release (latest by date)

Docker Image

MuleSoft do not provide an official docker image for the Mule runtime.

The module will use the docker image mariocairone/mule-ee:latest by default.

Setup

As a dependency on your Maven project:

<dependency>
   <groupId>com.mariocairone.mule</groupId>
   <artifactId>testcontainers-mule</artifactId>
   <version>1.0.0</version>
</dependency>

You can also build the .jar file yourself, assuming you that have Maven and JDK 1.8+ installed:

mvn clean install

The resulting .jar file will be located in the target/ folder.

You can also find SNAPSHOT builds of the latest and greatest changes on the master branch in the SonaType snapshots repository.

To add that snapshot repository to your Maven pom.xml use the following snippet:

<repositories>
    <repository>
        <id>oss-sonatype</id>
        <name>oss-sonatype</name>
        <url>https://oss.sonatype.org/content/repositories/snapshots/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>

Usage Example

The example below shows how to use the module to create a Mule container with a deployed application in a JUnit test class.

package com.mariocairone.mule.testcontainers;

import org.junit.ClassRule;
import org.junit.BeforeClass;
import org.junit.Test;
import org.testcontainers.containers.wait.strategy.Wait;


public class MuleServerContainerTest {

	@ClassRule
	public static final MuleServerContainer mule = new MuleServerContainer()
		.withDeployedApplications("target", "myApp*.zip")
		.withExposedPorts(8081)
		.withMuleArg("mule.env", "test")
		.withMuleLogFolder("target/logs")
		.waitingFor(Wait.forHttp("/")
			.forStatusCode(200);

	private static Integer mulePort;

	@BeforeClass
	public static void init() {
		mulePort = mule.getFirstMappedPort();
	}

	// Add your test
	 @Test
	 public void test()  {

	 }
}

Versions

Version
1.0.1
1.0.0