org.tonicsoft.timebomb:timebomb-core-test

Simple test utility for temporarily ignoring unit tests.

License

License

GroupId

GroupId

org.tonicsoft.timebomb
ArtifactId

ArtifactId

timebomb-core-test
Last Version

Last Version

0.0.0
Release Date

Release Date

Type

Type

jar
Description

Description

Simple test utility for temporarily ignoring unit tests.

Download timebomb-core-test

How to add to project

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

Dependencies

compile (2)

Group / Artifact Type Version
org.tonicsoft.timebomb : timebomb-core jar 0.0.0
junit : junit jar 4.12

Project Modules

There are no modules declared in this project.

timebomb

Build Status

Simple test utility for ignoring a unit test for a limited period of time.

download

timebomb is available from the Maven Central Repository. Junit and TestNG are the supported test frameworks. To use timebomb, simply declare a dependency on one of the following:

What is a Time Bomb?

The obvious drawback of using your test framework's "ignore" functionality directly is that the test may be forgotten about and remain ignored indefinitely. A Time Bomb will allow the test to be ignored until a specified time, after which the test will fail, reminding you to return to it.

Usage

The Time Bomb comes in two main flavours:

  • TimeBomb.blowUpAfter(...) - Run the test normally until the given point in time, after which the test will fail.
  • TimeBomb.ignoreUntil(...) - Ignore the test (i.e. code will not execute) until the given point in time, after which the test will fail.

Example

	@Test
	public void myTest() {
	    // This will do nothing until 2018-01-01, after which it will
		// throw a RuntimeException, causing the test to fail
	    TimeBomb.blowUpAfter(new LocalDate(2018,1,1));

		//This code will continue to run until 2018-01-01
		...
		assertThat(...)
	}

	@Test
	public void anotherTest() {
	    // This will throw an exception (depending on test framework)
		// until 2018-01-01 causing the test to be ignored, after which
		// it will throw a RuntimeException causing the test to fail.
		TimeBomb.ignoreUntil(new LocalDate(2018,1,1));

		//This code will not run until the TimeBomb is removed
		...
		assertThat(...)
	}

Versions

Version
0.0.0