// Copyright 2016 Yahoo Inc. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.test; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertThat; import static org.hamcrest.Matchers.lessThanOrEqualTo; import static org.hamcrest.Matchers.greaterThanOrEqualTo; /** * TotalOrderTester implements a total order test for OrderTester * * Usage: * * new TotalOrderTester<Integer>() * .theseObjects(3, 3) * .areLessThan(4) * .areLessThan(5) * .areLessThan(6) * .testOrdering(); * * * @author Vegard Sjonfjell */ public class TotalOrderTester> extends OrderTester { protected void lessTest(T a, T b) throws AssertionError { assertThat(a + " must be less than " + b, a.compareTo(b), lessThanOrEqualTo(-1)); } protected void greaterTest(T a, T b) throws AssertionError { assertThat(a + " must be greater than " + b, a.compareTo(b), greaterThanOrEqualTo(1)); } protected void equalTest(T a, T b) throws AssertionError { assertThat(a + " must be compared equal to " + b, a.compareTo(b), is(0)); } }