Fix API issues (#43)
* Deprecate Condition.*Throw(Exception) and add Supplier versions * Added: Condition.and(boolean) and Condition.or(boolean)
This commit is contained in:
parent
1fa6a3c05a
commit
d9f1b22b2f
5 changed files with 309 additions and 30 deletions
|
@ -5,11 +5,28 @@ All notable changes to this project will be documented in this file.
|
||||||
The format is based on [[https://keepachangelog.com/en/1.0.0/][Keep a Changelog]], and this project adheres to
|
The format is based on [[https://keepachangelog.com/en/1.0.0/][Keep a Changelog]], and this project adheres to
|
||||||
[[https://semver.org/spec/v2.0.0.html][Semantic Versioning]].
|
[[https://semver.org/spec/v2.0.0.html][Semantic Versioning]].
|
||||||
|
|
||||||
* 0.7.1
|
* 1.0.0
|
||||||
|
|
||||||
|
** Added
|
||||||
|
|
||||||
|
- ~Condition.thenThrow(Supplier<Exception>)~
|
||||||
|
- ~Condition.otherwiseThrow(Supplier<Exception>)~
|
||||||
|
- ~Condition.and(boolean)~
|
||||||
|
- ~Condition.or(boolean)~
|
||||||
|
|
||||||
|
** Changed
|
||||||
|
|
||||||
|
- [jenkins] Compatibility build against java 11 (#40)
|
||||||
|
|
||||||
|
** Deprecated
|
||||||
|
|
||||||
|
- ~Condition.thenThrow(Exception)~
|
||||||
|
- ~Condition.otherwiseThrow(Exception)~
|
||||||
|
|
||||||
|
** Dependencies
|
||||||
|
|
||||||
- Bump assertj-core from 3.11.0 to 3.11.1 (#38)
|
- Bump assertj-core from 3.11.0 to 3.11.1 (#38)
|
||||||
- Bump kemitix-maven-tiles from 0.9.0 to 1.3.1 (#40)
|
- Bump kemitix-maven-tiles from 0.9.0 to 1.3.1 (#40)
|
||||||
- [jenkins] Compatibility build against java 11 (#40)
|
|
||||||
- Bump kemitix-parent from 5.1.1 to 5.2.0 (#39)
|
- Bump kemitix-parent from 5.1.1 to 5.2.0 (#39)
|
||||||
|
|
||||||
* 0.7.0
|
* 0.7.0
|
||||||
|
|
|
@ -77,7 +77,7 @@ public interface Condition {
|
||||||
Condition and(Supplier<Boolean> clause);
|
Condition and(Supplier<Boolean> clause);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Logicaly OR current {@code Condition} with the other {@code Condition}.
|
* Logically AND current {@code Condition} with the other {@code Condition}.
|
||||||
*
|
*
|
||||||
* @param other the other Condition
|
* @param other the other Condition
|
||||||
* @return true if both Conditions are true
|
* @return true if both Conditions are true
|
||||||
|
@ -86,6 +86,16 @@ public interface Condition {
|
||||||
return Condition.where(isTrue()).and(other::isTrue);
|
return Condition.where(isTrue()).and(other::isTrue);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Logically AND current {@code Condition} with the other boolean.
|
||||||
|
*
|
||||||
|
* @param other the other boolean
|
||||||
|
* @return true if both Conditions are true
|
||||||
|
*/
|
||||||
|
default Condition and(boolean other) {
|
||||||
|
return Condition.where(isTrue()).and(Condition.where(other));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Logically OR combine the current {@code Condition} with the clause.
|
* Logically OR combine the current {@code Condition} with the clause.
|
||||||
*
|
*
|
||||||
|
@ -105,6 +115,16 @@ public interface Condition {
|
||||||
return where(isTrue()).or(other::isTrue);
|
return where(isTrue()).or(other::isTrue);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Logically OR the current {@code Condition} with the other boolean.
|
||||||
|
*
|
||||||
|
* @param other the other boolean
|
||||||
|
* @return true if either Condition is true
|
||||||
|
*/
|
||||||
|
default Condition or(boolean other) {
|
||||||
|
return where(isTrue()).or(Condition.where(other));
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Perform this response if the {@code Condition} is {@code true}.
|
* Perform this response if the {@code Condition} is {@code true}.
|
||||||
*
|
*
|
||||||
|
@ -131,23 +151,45 @@ public interface Condition {
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Throw then exception if the {@code Condition} is {@code true}.
|
* Throw the exception if the {@code Condition} is {@code true}.
|
||||||
*
|
*
|
||||||
* @param exception the Exception to throw
|
* @param exception the Exception to throw
|
||||||
* @throws Exception the exception
|
* @throws Exception the exception
|
||||||
|
* @deprecated use {@link #thenThrow(Supplier)}
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
@SuppressWarnings(SuppressHelper.CS_ILLEGALTHROWS)
|
@SuppressWarnings(SuppressHelper.CS_ILLEGALTHROWS)
|
||||||
void thenThrow(Exception exception) throws Exception;
|
void thenThrow(Exception exception) throws Exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Throw the exception supplied if the {@code Condition} is {@code true}.
|
||||||
|
*
|
||||||
|
* @param exceptionSupplier the supplier of the Exception to throw
|
||||||
|
* @throws Exception the exception
|
||||||
|
*/
|
||||||
|
@SuppressWarnings(SuppressHelper.CS_ILLEGALTHROWS)
|
||||||
|
void thenThrow(Supplier<Exception> exceptionSupplier) throws Exception;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Throw then exception if the {@code Condition} is {@code false}.
|
* Throw then exception if the {@code Condition} is {@code false}.
|
||||||
*
|
*
|
||||||
* @param exception the Exception to throw
|
* @param exception the Exception to throw
|
||||||
* @throws Exception the exception
|
* @throws Exception the exception
|
||||||
|
* @deprecated use {@link #otherwiseThrow(Supplier)}
|
||||||
*/
|
*/
|
||||||
|
@Deprecated
|
||||||
@SuppressWarnings(SuppressHelper.CS_ILLEGALTHROWS)
|
@SuppressWarnings(SuppressHelper.CS_ILLEGALTHROWS)
|
||||||
void otherwiseThrow(Exception exception) throws Exception;
|
void otherwiseThrow(Exception exception) throws Exception;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Throw then exception if the {@code Condition} is {@code false}.
|
||||||
|
*
|
||||||
|
* @param exceptionSupplier the supplier of the Exception to throw
|
||||||
|
* @throws Exception the exception
|
||||||
|
*/
|
||||||
|
@SuppressWarnings(SuppressHelper.CS_ILLEGALTHROWS)
|
||||||
|
void otherwiseThrow(Supplier<Exception> exceptionSupplier) throws Exception;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Apply the function to the Condtion, resulting an another Condition.
|
* Apply the function to the Condtion, resulting an another Condition.
|
||||||
*
|
*
|
||||||
|
|
|
@ -58,11 +58,21 @@ final class FalseCondition implements Condition {
|
||||||
// do nothing
|
// do nothing
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void thenThrow(final Supplier<Exception> exceptionSupplier) throws Exception {
|
||||||
|
// do nothing
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void otherwiseThrow(final Exception exception) throws Exception {
|
public void otherwiseThrow(final Exception exception) throws Exception {
|
||||||
throw exception;
|
throw exception;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void otherwiseThrow(final Supplier<Exception> exceptionSupplier) throws Exception {
|
||||||
|
throw exceptionSupplier.get();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isTrue() {
|
public boolean isTrue() {
|
||||||
return false;
|
return false;
|
||||||
|
|
|
@ -59,11 +59,21 @@ final class TrueCondition implements Condition {
|
||||||
throw exception;
|
throw exception;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void thenThrow(final Supplier<Exception> exceptionSupplier) throws Exception {
|
||||||
|
throw exceptionSupplier.get();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void otherwiseThrow(final Exception exception) throws Exception {
|
public void otherwiseThrow(final Exception exception) throws Exception {
|
||||||
// do nothing
|
// do nothing
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void otherwiseThrow(final Supplier<Exception> exceptionSupplier) throws Exception {
|
||||||
|
// do nothing
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isTrue() {
|
public boolean isTrue() {
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -30,7 +30,7 @@ public class ConditionalTest implements WithAssertions {
|
||||||
@Test
|
@Test
|
||||||
public void whereTrueThenRuns() {
|
public void whereTrueThenRuns() {
|
||||||
//when
|
//when
|
||||||
when(true);
|
whenAndCondition(true);
|
||||||
//then
|
//then
|
||||||
assertThatTheThenResponseRuns();
|
assertThatTheThenResponseRuns();
|
||||||
}
|
}
|
||||||
|
@ -38,39 +38,103 @@ public class ConditionalTest implements WithAssertions {
|
||||||
@Test
|
@Test
|
||||||
public void whereFalseOtherwiseRuns() {
|
public void whereFalseOtherwiseRuns() {
|
||||||
//when
|
//when
|
||||||
when(false);
|
whenAndCondition(false);
|
||||||
//then
|
//then
|
||||||
assertThatTheOtherwiseResponseRuns();
|
assertThatTheOtherwiseResponseRuns();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereTrueAndTrueThenRuns() {
|
public void whereTrueAndSupplierTrueThenRuns() {
|
||||||
//when
|
//when
|
||||||
when(true, true);
|
whenAndSupplier(true, true);
|
||||||
//then
|
//then
|
||||||
assertThatTheThenResponseRuns();
|
assertThatTheThenResponseRuns();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereTrueAndFalseThenOtherwiseRuns() {
|
public void whereTrueAndSupplierFalseThenOtherwiseRuns() {
|
||||||
//when
|
//when
|
||||||
when(true, false);
|
whenAndSupplier(true, false);
|
||||||
//then
|
//then
|
||||||
assertThatTheOtherwiseResponseRuns();
|
assertThatTheOtherwiseResponseRuns();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereFalseAndTrueThenOtherwiseRuns() {
|
public void whereFalseAndSupplierTrueThenOtherwiseRuns() {
|
||||||
//when
|
//when
|
||||||
when(false, true);
|
whenAndSupplier(false, true);
|
||||||
//then
|
//then
|
||||||
assertThatTheOtherwiseResponseRuns();
|
assertThatTheOtherwiseResponseRuns();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereFalseAndFalseThenOtherwiseRuns() {
|
public void whereFalseAndSupplierFalseThenOtherwiseRuns() {
|
||||||
//when
|
//when
|
||||||
when(false, false);
|
whenAndSupplier(false, false);
|
||||||
|
//then
|
||||||
|
assertThatTheOtherwiseResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereTrueAndConditionTrueThenRuns() {
|
||||||
|
//when
|
||||||
|
whenAndCondition(true, true);
|
||||||
|
//then
|
||||||
|
assertThatTheThenResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereTrueAndConditionFalseThenOtherwiseRuns() {
|
||||||
|
//when
|
||||||
|
whenAndCondition(true, false);
|
||||||
|
//then
|
||||||
|
assertThatTheOtherwiseResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereFalseAndTrueConditionThenOtherwiseRuns() {
|
||||||
|
//when
|
||||||
|
whenAndCondition(false, true);
|
||||||
|
//then
|
||||||
|
assertThatTheOtherwiseResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereFalseAndConditionFalseThenOtherwiseRuns() {
|
||||||
|
//when
|
||||||
|
whenAndCondition(false, false);
|
||||||
|
//then
|
||||||
|
assertThatTheOtherwiseResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereTrueAndBooleanTrueThenRuns() {
|
||||||
|
//when
|
||||||
|
whenAndBoolean(true, true);
|
||||||
|
//then
|
||||||
|
assertThatTheThenResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereTrueAndBooleanFalseThenOtherwiseRuns() {
|
||||||
|
//when
|
||||||
|
whenAndBoolean(true, false);
|
||||||
|
//then
|
||||||
|
assertThatTheOtherwiseResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereFalseAndBooleanTrueThenOtherwiseRuns() {
|
||||||
|
//when
|
||||||
|
whenAndBoolean(false, true);
|
||||||
|
//then
|
||||||
|
assertThatTheOtherwiseResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereFalseAndBooleanFalseThenOtherwiseRuns() {
|
||||||
|
//when
|
||||||
|
whenAndBoolean(false, false);
|
||||||
//then
|
//then
|
||||||
assertThatTheOtherwiseResponseRuns();
|
assertThatTheOtherwiseResponseRuns();
|
||||||
}
|
}
|
||||||
|
@ -87,33 +151,97 @@ public class ConditionalTest implements WithAssertions {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereTrueOrTrueThenDoSomething() {
|
public void whereTrueOrSupplierTrueThenDoSomething() {
|
||||||
//when
|
//when
|
||||||
whenOr(true, true);
|
whenOrSupplier(true, true);
|
||||||
//then
|
//then
|
||||||
assertThatTheThenResponseRuns();
|
assertThatTheThenResponseRuns();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereTrueOrFalseThenDoSomething() {
|
public void whereTrueOrSupplierFalseThenDoSomething() {
|
||||||
//when
|
//when
|
||||||
whenOr(true, false);
|
whenOrSupplier(true, false);
|
||||||
//then
|
//then
|
||||||
assertThatTheThenResponseRuns();
|
assertThatTheThenResponseRuns();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereFalseOrTrueThenDoSomething() {
|
public void whereFalseOrSupplierTrueThenDoSomething() {
|
||||||
//when
|
//when
|
||||||
whenOr(false, true);
|
whenOrSupplier(false, true);
|
||||||
//then
|
//then
|
||||||
assertThatTheThenResponseRuns();
|
assertThatTheThenResponseRuns();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereFalseOrFalseThenDoSomethingElse() {
|
public void whereFalseOrSupplierFalseThenDoSomethingElse() {
|
||||||
//when
|
//when
|
||||||
whenOr(false, false);
|
whenOrSupplier(false, false);
|
||||||
|
//then
|
||||||
|
assertThatTheOtherwiseResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereTrueOrConditionTrueThenDoSomething() {
|
||||||
|
//when
|
||||||
|
whenOrCondition(true, true);
|
||||||
|
//then
|
||||||
|
assertThatTheThenResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereTrueOrConditionFalseThenDoSomething() {
|
||||||
|
//when
|
||||||
|
whenOrCondition(true, false);
|
||||||
|
//then
|
||||||
|
assertThatTheThenResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereFalseOrConditionTrueThenDoSomething() {
|
||||||
|
//when
|
||||||
|
whenOrCondition(false, true);
|
||||||
|
//then
|
||||||
|
assertThatTheThenResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereFalseOrConditionFalseThenDoSomethingElse() {
|
||||||
|
//when
|
||||||
|
whenOrCondition(false, false);
|
||||||
|
//then
|
||||||
|
assertThatTheOtherwiseResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereTrueOrBooleanTrueThenDoSomething() {
|
||||||
|
//when
|
||||||
|
whenOrBoolean(true, true);
|
||||||
|
//then
|
||||||
|
assertThatTheThenResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereTrueOrBooleanFalseThenDoSomething() {
|
||||||
|
//when
|
||||||
|
whenOrBoolean(true, false);
|
||||||
|
//then
|
||||||
|
assertThatTheThenResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereFalseOrBooleanTrueThenDoSomething() {
|
||||||
|
//when
|
||||||
|
whenOrBoolean(false, true);
|
||||||
|
//then
|
||||||
|
assertThatTheThenResponseRuns();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereFalseOrBooleanFalseThenDoSomethingElse() {
|
||||||
|
//when
|
||||||
|
whenOrBoolean(false, false);
|
||||||
//then
|
//then
|
||||||
assertThatTheOtherwiseResponseRuns();
|
assertThatTheOtherwiseResponseRuns();
|
||||||
}
|
}
|
||||||
|
@ -261,13 +389,23 @@ public class ConditionalTest implements WithAssertions {
|
||||||
assertThatTheOtherwiseResponseDidNotRun();
|
assertThatTheOtherwiseResponseDidNotRun();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void when(final boolean clause) {
|
private void whenAndCondition(final boolean clause) {
|
||||||
Condition.where(clause)
|
Condition.where(clause)
|
||||||
.then(thenResponse)
|
.then(thenResponse)
|
||||||
.otherwise(otherwiseResponse);
|
.otherwise(otherwiseResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void when(
|
private void whenAndCondition(
|
||||||
|
final boolean firstClause,
|
||||||
|
final boolean secondClause
|
||||||
|
) {
|
||||||
|
Condition.where(firstClause)
|
||||||
|
.and(Condition.where(secondClause))
|
||||||
|
.then(thenResponse)
|
||||||
|
.otherwise(otherwiseResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void whenAndSupplier(
|
||||||
final boolean firstClause,
|
final boolean firstClause,
|
||||||
final boolean secondClause
|
final boolean secondClause
|
||||||
) {
|
) {
|
||||||
|
@ -277,7 +415,27 @@ public class ConditionalTest implements WithAssertions {
|
||||||
.otherwise(otherwiseResponse);
|
.otherwise(otherwiseResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void whenOr(
|
private void whenAndBoolean(
|
||||||
|
final boolean firstClause,
|
||||||
|
final boolean secondClause
|
||||||
|
) {
|
||||||
|
Condition.where(firstClause)
|
||||||
|
.and(secondClause)
|
||||||
|
.then(thenResponse)
|
||||||
|
.otherwise(otherwiseResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void whenOrCondition(
|
||||||
|
final boolean firstClause,
|
||||||
|
final boolean secondClause
|
||||||
|
) {
|
||||||
|
Condition.where(firstClause)
|
||||||
|
.or(Condition.where(secondClause))
|
||||||
|
.then(thenResponse)
|
||||||
|
.otherwise(otherwiseResponse);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void whenOrSupplier(
|
||||||
final boolean firstClause,
|
final boolean firstClause,
|
||||||
final boolean secondClause
|
final boolean secondClause
|
||||||
) {
|
) {
|
||||||
|
@ -287,8 +445,18 @@ public class ConditionalTest implements WithAssertions {
|
||||||
.otherwise(otherwiseResponse);
|
.otherwise(otherwiseResponse);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void whenOrBoolean(
|
||||||
|
final boolean firstClause,
|
||||||
|
final boolean secondClause
|
||||||
|
) {
|
||||||
|
Condition.where(firstClause)
|
||||||
|
.or(secondClause)
|
||||||
|
.then(thenResponse)
|
||||||
|
.otherwise(otherwiseResponse);
|
||||||
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void shortCurcuitOr() {
|
public void shortCircuitOr() {
|
||||||
//given
|
//given
|
||||||
final AtomicInteger atomicInteger = new AtomicInteger();
|
final AtomicInteger atomicInteger = new AtomicInteger();
|
||||||
//when
|
//when
|
||||||
|
@ -301,7 +469,7 @@ public class ConditionalTest implements WithAssertions {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void shortCurcuitAnd() {
|
public void shortCircuitAnd() {
|
||||||
//given
|
//given
|
||||||
final AtomicInteger atomicInteger = new AtomicInteger();
|
final AtomicInteger atomicInteger = new AtomicInteger();
|
||||||
//when
|
//when
|
||||||
|
@ -315,6 +483,14 @@ public class ConditionalTest implements WithAssertions {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereTrueThenThrowException() {
|
public void whereTrueThenThrowException() {
|
||||||
|
//given
|
||||||
|
assertThatExceptionOfType(IOException.class)
|
||||||
|
.isThrownBy(() -> Condition.where(true)
|
||||||
|
.thenThrow(IOException::new));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereTrueThenThrowExceptionDeprecated() {
|
||||||
//given
|
//given
|
||||||
assertThatExceptionOfType(IOException.class)
|
assertThatExceptionOfType(IOException.class)
|
||||||
.isThrownBy(() -> Condition.where(true)
|
.isThrownBy(() -> Condition.where(true)
|
||||||
|
@ -323,6 +499,14 @@ public class ConditionalTest implements WithAssertions {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereFalseThenDoNotThrowException() throws Exception {
|
public void whereFalseThenDoNotThrowException() throws Exception {
|
||||||
|
assertThatCode(() ->
|
||||||
|
Condition.where(false)
|
||||||
|
.thenThrow(IOException::new))
|
||||||
|
.doesNotThrowAnyException();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereFalseThenDoNotThrowExceptionDeprecated() throws Exception {
|
||||||
assertThatCode(() ->
|
assertThatCode(() ->
|
||||||
Condition.where(false)
|
Condition.where(false)
|
||||||
.thenThrow(new IOException()))
|
.thenThrow(new IOException()))
|
||||||
|
@ -331,6 +515,14 @@ public class ConditionalTest implements WithAssertions {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereFalseOtherwiseThenThrowException() {
|
public void whereFalseOtherwiseThenThrowException() {
|
||||||
|
//given
|
||||||
|
assertThatExceptionOfType(IOException.class)
|
||||||
|
.isThrownBy(() -> Condition.where(false)
|
||||||
|
.otherwiseThrow(IOException::new));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereFalseOtherwiseThenThrowExceptionDeprecated() {
|
||||||
//given
|
//given
|
||||||
assertThatExceptionOfType(IOException.class)
|
assertThatExceptionOfType(IOException.class)
|
||||||
.isThrownBy(() -> Condition.where(false)
|
.isThrownBy(() -> Condition.where(false)
|
||||||
|
@ -339,6 +531,14 @@ public class ConditionalTest implements WithAssertions {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void whereTrueOtherwiseThenDoNotThrowException() throws Exception {
|
public void whereTrueOtherwiseThenDoNotThrowException() throws Exception {
|
||||||
|
assertThatCode(() ->
|
||||||
|
Condition.where(true)
|
||||||
|
.otherwiseThrow(IOException::new))
|
||||||
|
.doesNotThrowAnyException();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void whereTrueOtherwiseThenDoNotThrowExceptionDeprecated() throws Exception {
|
||||||
assertThatCode(() ->
|
assertThatCode(() ->
|
||||||
Condition.where(true)
|
Condition.where(true)
|
||||||
.otherwiseThrow(new IOException()))
|
.otherwiseThrow(new IOException()))
|
||||||
|
|
Loading…
Reference in a new issue