package com.framework.utils.matchers;
import org.hamcrest.Description;
import org.hamcrest.TypeSafeMatcher;
import org.joda.time.DateTimeComparator;
import org.joda.time.DateTimeFieldType;
import org.joda.time.ReadableDateTime;
/**
* Created with IntelliJ IDEA ( LivePerson : www.liveperson.com )
*
* Package: com.framework.utils.matchers
*
* Name : IsDateTimeGraterThan
*
* User : solmarkn / Dani Vainstein
*
* Date : 2015-01-16
*
* Time : 13:16
*/
public class IsDateTimePartAfterThan extends TypeSafeMatcher<ReadableDateTime>
{
//region IsDateTimePartAfterThan - Variables Declaration and Initialization Section.
private final ReadableDateTime dt;
private final DateTimeFieldType dateTimeFieldType;
//endregion
//region IsDateTimePartAfterThan - Constructor Methods Section
public IsDateTimePartAfterThan( ReadableDateTime dateTime, DateTimeFieldType dateTimeFieldType )
{
this.dt = dateTime;
this.dateTimeFieldType = dateTimeFieldType;
}
//endregion
//region IsDateTimePartAfterThan - Public Methods Section
@Override
public boolean matchesSafely( ReadableDateTime item )
{
DateTimeComparator dtComparator = DateTimeComparator.getInstance( dateTimeFieldType );
return dtComparator.compare( dt, item ) < 0;
}
public void describeTo( Description description )
{
description.appendText( "a datetime " )
.appendValue( dateTimeFieldType.toString() )
.appendText( "instance is after than " );
description.appendValue( dt );
}
//endregion
}