@Test
public void evaluateInstantInstant() {

    assertFalse( before.evaluate( instant( "2014-01-01" ), instant( "2014-01-01" ) ) );
    assertFalse( before.evaluate( instant( "2014-01-01T00:00:01" ), instant( "2014-01-01T00:00:01" ) ) );
    assertFalse( before.evaluate( instant( "2014-01-01T00:00:01.000" ), instant( "2014-01-01T00:00:01.000" ) ) );
    assertFalse( before.evaluate( instant( "2015-01-01" ), instant( "2014-01-01" ) ) );
    assertFalse( before.evaluate( instant( "2014-01-01T00:00:02" ), instant( "2014-01-01T00:00:01" ) ) );
    assertFalse( before.evaluate( instant( "2014-01-01T00:00:01.001" ), instant( "2014-01-01T00:00:01.000" ) ) );
    assertFalse( before.evaluate( null, null ) );
    assertFalse( before.evaluate( instant( "2014-01-01T00:00:01" ), instant( "2014-01-01T00:00:01" ) ) );
    assertFalse( before.evaluate( instant( "INDETERMINATE" ), instant( "INDETERMINATE" ) ) );
    assertFalse( before.evaluate( instant( "2014-01-01T00:00:02" ), instant( "2014-01-01T00:00:01" ) ) );
    assertFalse( before.evaluate( instant( "INDETERMINATE" ), instant( "2014-01-01T00:00:01" ) ) );
    assertFalse( before.evaluate( instant( "2014-01-01T00:00:01" ), instant( "INDETERMINATE" ) ) );
    assertFalse( before.evaluate( null, instant( "2014-01-01T00:00:01" ) ) );
    assertFalse( before.evaluate( instant( "2014-01-01T00:00:01" ), null ) );
    assertTrue( before.evaluate( instant( "2014-01-01" ), instant( "2015-01-01" ) ) );
    assertTrue( before.evaluate( instant( "2014-01-01T00:00:01" ), instant( "2014-01-01T00:00:02" ) ) );
    assertTrue( before.evaluate( instant( "2014-01-01T00:00:01.000" ), instant( "2014-01-01T00:00:01.001" ) ) );
}