@Test
void shouldThrowIfLargerThanIntegerMax()
{

    IntegerValue value1 = new IntegerValue( Integer.MAX_VALUE );
    IntegerValue value2 = new IntegerValue( Integer.MAX_VALUE + 1L);
    assertThat(value1.asInt(), equalTo(Integer.MAX_VALUE));
    assertThrows( LossyCoercion.class, value2::asInt );
}