@Test
public void shouldCompareVersions()
{

    assertThat(Version.of(""), is(lessThan(Version.of("1"))));
    assertThat(Version.of("1"), is(lessThan(Version.of("2"))));
    assertThat(Version.of("12"), is(lessThan(Version.of("12.1"))));
    assertThat(Version.of("12.1"), is(lessThan(Version.of("12.2"))));
    assertThat(Version.of("12-A"), is(lessThan(Version.of("12"))));
    assertThat(Version.of("12-A"), is(lessThan(Version.of("12.1"))));
    assertThat(Version.of("1.2"), is(lessThan(Version.of("1.2.1"))));
    assertThat(Version.of("1.2.1"), is(lessThan(Version.of("1.2.2"))));
    assertThat(Version.of("1.2.1"), is(lessThan(Version.of("1.2.2-sp2"))));
    assertThat(Version.of("1.2-sp2"), is(lessThan(Version.of("1.2.1"))));
    assertThat(Version.of("1.2-SNAPSHOT"), is(lessThan(Version.of("1.2"))));
    assertThat(Version.of("1.2-SNAPSHOT"), is(lessThan(Version.of("1.2.1-SNAPSHOT"))));
}