/valid8j

A DbC library designed to be a successor of valid4j. (forked from my OSS repo)

Primary LanguageJavaApache License 2.0Apache-2.0

valid8j-pcond: DbC and Value Checking Library

valid8j (pronounced validate-j) is a DbC (design by contract[1]) library named after valid4j[2]. It uses pcond, which provides you with predicates that can print descriptive message on a failure, instead of hamcrest used by valid4j. The benefit of pcond over hamcrest is its compatibility and extensibility. Instead of "matchers" that hamcrest uses to verify values, pcond uses Java’s plain Predicate and provide useful preset predicates from which you can build your own predicates for complex types. So, you can reuse the predicates you created for assertions for other purposes, such as value checking and testing.

For full documentation, visit here. Also, check its overview.

Installation

Have a following maven dependency in your pom.xml.

<dependency>
  <groupId>com.github.dakusui</groupId>
  <artifactId>valid8j-pcond</artifactId>
  <version>{valid8j-pcond-version}</version>
</dependency>

Visit oss.sonatype.org to figure out the most recent version of valid8j-pcond.

Building the valid8j-pcond Library

How to Build the Project

Compile and Test

mvn clean compile test

Docs

mvn clean compile test site, you will see generated docs under target/site directory.

Build dependencies

  • Java SDK8

  • mvn

  • gem

  • xmllint

  • git

References