The WOUnit framework contains a set of utilities for testing WebObjects applications using JUnit 4.7 or later capabilities. This library can be useful if you write unit/integration tests for Enterprise Objects or employ the TDD technique on your projects.
Version: 1.5
Maven users have to add the dependency declaration:
<dependency>
<groupId>com.wounit</groupId>
<artifactId>wounit</artifactId>
<version>1.5</version>
</dependency>
Non Maven users have to:
import static com.wounit.matchers.EOAssert.*;
import com.wounit.rules.MockEditingContext;
import com.wounit.annotations.Dummy;
import com.wounit.annotations.UnderTest;
public class MyEntityTest {
@Rule
public MockEditingContext ec = new MockEditingContext("MyModel");
@Dummy
private Bar dummyBar;
@UnderTest
private Foo foo;
@Test
public void cantSaveFooWithOnlyOneBar() {
foo.addToBarRelationship(dummyBar);
confirm(foo, cannotBeSavedBecause("Foo must have at least 2 bars related to it"));
}
}
OR
import static com.wounit.matchers.EOAssert.*;
import com.wounit.rules.TemporaryEditingContext;
import com.wounit.annotations.UnderTest;
public class MyEntityTest {
@Rule
public TemporaryEditingContext ec = new TemporaryEditingContext("MyModel");
@UnderTest
private Foo foo;
@Test
public void cannotSaveFooIfBarIsNull() {
foo.setBar(null);
confirm(foo, cannotBeSavedBecause("The bar property cannot be null"));
}
}
WOUnit requires WebObjects and Wonder libraries that are not available in the Maven Central repository. Check steps 2 and 3 in the Quick Start guide for more information about how to setup the WOCommunity repository and how to install WebObjects in the local Maven repository.
WOUnit can be built running the Maven command:
mvn clean install
Note: WOUnit can only be successfully built if the WOCommunity repository is correctly configured.
WOUnit can be built running the Ant command:
ant package
The required libraries will be automatically download to the lib
folder in the WOUnit project root.
Note: WebObjects must be installed. If it isn't installed in the default location, a parameter can be used to define the path to the WebObjects libraries.
ant package -Dwebobjects.lib=${path_to_webobjects_lib_folder}
Maven users should install the m2e plug-in for Eclipse and use the Import Maven Project option.
Ant users can add the libraries downloaded into the lib
folder to the project's build path. The WebObjects libraries must be added manually.
This project is an evolution of the original WOUnitTest 2 framework and is heavily inspired by it.