@Test
  void comparison() {
    repository.insert(generator.get().withId("id0").withValue(0L));
    repository.insert(generator.get().withId("id1").withValue(1L));
    repository.insert(generator.get().withId("id2").withValue(2L));

    ids(criteria.value.atMost(0L)).hasContentInAnyOrder("id0");
    ids(criteria.value.atLeast(0L)).hasContentInAnyOrder("id0", "id1", "id2");
    ids(criteria.value.atMost(2L)).hasContentInAnyOrder("id0", "id1", "id2");
    ids(criteria.value.between(0L, 2L)).hasContentInAnyOrder("id0", "id1", "id2");
    ids(criteria.value.between(10L, 20L)).isEmpty();
    ids(criteria.value.atMost(1L)).hasContentInAnyOrder("id0", "id1");
    ids(criteria.value.atLeast(1L)).hasContentInAnyOrder("id1", "id2");
    ids(criteria.value.atLeast(2L)).hasContentInAnyOrder("id2");
    ids(criteria.value.atLeast(33L)).isEmpty();
    ids(criteria.value.greaterThan(2L)).isEmpty();
    ids(criteria.value.lessThan(0L)).isEmpty();
  }
Testing various string operations prefix/suffix/length etc.
criteria/common/test/org/immutables/criteria/typemodel/LongTemplate.java