### Question:
Datable implements Comparable<Datable>, Serializable, Range { @Override public Object getUpperLimit() { return formatDate(toDate); } Datable(String edtf); String getEdtf(); boolean isFloruit(); Certainty getCertainty(); Date getFromDate(); Date getToDate(); @Override @JsonValue String toString(); int getFromYear(); int getToYear(); @Override int compareTo(Datable other); @Override boolean equals(Object obj); @Override int hashCode(); @Override boolean isValid(); @Override Object getUpperLimit(); @Override Object getLowerLimit();  }### Answer:
@Test public void testGetUpperLimit() { Datable datable = new Datable("2013"); assertThat(datable.getUpperLimit(), equalTo(getStringAsObject("20131231"))); }
@Test public void testGetUpperLimitNoEndDateSpecified() { Datable rangeWithoutEndDate = new Datable("2013/open"); assertThat(rangeWithoutEndDate.getUpperLimit(), is(nullValue())); }