@Test
 public void shouldSatisfyByDefaultForNull() {
   specAbstractSomeDomainObject =
       new AbstractSpecification<SomeDomainObject>() {
         @Override
         public String satisfiesSafely(final SomeDomainObject obj) {
           return null;
         }
       };
   assertThat(specAbstractSomeDomainObject.satisfies(null), is(nullValue()));
 }
 @Test
 public void shouldSatisfyForNonNullCorrectTypeIfConfiguredAsSuch() {
   specAbstractSomeDomainObject =
       new AbstractSpecification<SomeDomainObject>(
           Nullability.ENSURE_NOT_NULL, TypeChecking.ENSURE_CORRECT_TYPE) {
         @Override
         public String satisfiesSafely(final SomeDomainObject obj) {
           return null;
         }
       };
   assertThat(specAbstractSomeDomainObject.satisfies(new SomeDomainObject()), is(nullValue()));
 }