@Test void keepShouldThrowOnGet() { assertThatThrownBy(() -> ValuePatch.<Integer>keep().get()).isInstanceOf(NoSuchElementException.class); }
@Test void keepShouldProduceKeptValues() { assertThat(ValuePatch.<Integer>keep().isKept()).isTrue(); }
@Test public void keepShouldNotBeRemoved() { assertThat(ValuePatch.<Integer>keep().isRemoved()).isFalse(); }
@Test void keepShouldNotBeRemoved() { assertThat(ValuePatch.<Integer>keep().isRemoved()).isFalse(); }
@Test public void keepShouldThrowOnGet() { assertThatThrownBy(() -> ValuePatch.<Integer>keep().get()).isInstanceOf(NoSuchElementException.class); }
@Test public void keepShouldProduceKeptValues() { assertThat(ValuePatch.<Integer>keep().isKept()).isTrue(); }
@Test public void keepShouldNotBeModified() { assertThat(ValuePatch.<Integer>keep().isModified()).isFalse(); }
@Test void keepShouldNotBeModified() { assertThat(ValuePatch.<Integer>keep().isModified()).isFalse(); }
@Test void getOrElseShouldReturnReplacementWhenKept() { assertThat(ValuePatch.<Integer>keep().getOrElse(REPLACEMENT_VALUE)).isEqualTo(REPLACEMENT_VALUE); }
@Test public void getOrElseShouldReturnReplacementWhenKept() { assertThat(ValuePatch.<Integer>keep().getOrElse(REPLACEMENT_VALUE)).isEqualTo(REPLACEMENT_VALUE); }
@Test void mapNotKeptToValueShouldPreserveKept() { assertThat( ValuePatch.<Integer>keep() .mapNotKeptToOptional(optional -> optional.map(i -> i + 1).orElse(REPLACEMENT_VALUE))) .isEmpty(); }
@Test public void mapNotKeptToValueShouldPreserveKept() { assertThat( ValuePatch.<Integer>keep() .mapNotKeptToOptional(optional -> optional.map(i -> i + 1).orElse(REPLACEMENT_VALUE))) .isEmpty(); }
@Test void toOptionalShouldReturnElseWhenKept() { assertThat(ValuePatch.<Integer>keep().toOptional()).isEqualTo(Optional.empty()); }
@Test public void toOptionalShouldReturnElseWhenKept() { assertThat(ValuePatch.<Integer>keep().toOptional()).isEqualTo(Optional.empty()); }
@Test void notKeptOrElseShouldReturnElseWhenKept() { assertThat(ValuePatch.<Integer>keep().notKeptOrElse(REPLACEMENT)).isEqualTo(REPLACEMENT); }
@Test public void notKeptOrElseShouldReturnElseWhenKept() { assertThat(ValuePatch.<Integer>keep().notKeptOrElse(REPLACEMENT)).isEqualTo(REPLACEMENT); }
@Test public void getOrElseShouldReturnNullWhenKeptAndNullSpecified() { assertThat(ValuePatch.<Integer>keep().getOrElse(null)).isNull(); }
@Test void getOrElseShouldReturnNullWhenKeptAndNullSpecified() { assertThat(ValuePatch.<Integer>keep().getOrElse(null)).isNull(); }