[BAEL-3117] XOR implementations
This commit is contained in:
parent
87ba90d455
commit
13da8b8cee
@ -0,0 +1,20 @@
|
|||||||
|
package com.baeldung.java.booleanoperators;
|
||||||
|
|
||||||
|
public class Car {
|
||||||
|
|
||||||
|
private boolean diesel;
|
||||||
|
private boolean manual;
|
||||||
|
|
||||||
|
public Car(boolean diesel, boolean manual) {
|
||||||
|
this.diesel = diesel;
|
||||||
|
this.manual = manual;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isDiesel() {
|
||||||
|
return diesel;
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean isManual() {
|
||||||
|
return manual;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,64 @@
|
|||||||
|
package com.baeldung.java.booleanoperators;
|
||||||
|
|
||||||
|
import org.junit.jupiter.api.Test;
|
||||||
|
|
||||||
|
import static org.assertj.core.api.Assertions.assertThat;
|
||||||
|
|
||||||
|
class XorUnitTest {
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void givenDieselManualCar_whenXorOldSchool_ThenFalse() {
|
||||||
|
Car car = new Car(true, true);
|
||||||
|
boolean dieselXorManual = (car.isDiesel() && !car.isManual()) || (!car.isDiesel() && car.isManual());
|
||||||
|
assertThat(dieselXorManual).isFalse();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void givenDieselAutomaticCar_whenXorOldSchool_ThenTrue() {
|
||||||
|
Car car = new Car(true, false);
|
||||||
|
boolean dieselXorManual = (car.isDiesel() && !car.isManual()) || (!car.isDiesel() && car.isManual());
|
||||||
|
assertThat(dieselXorManual).isTrue();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void givenNonDieselManualCar_whenXorOldSchool_ThenTrue() {
|
||||||
|
Car car = new Car(false, true);
|
||||||
|
boolean dieselXorManual = (car.isDiesel() && !car.isManual()) || (!car.isDiesel() && car.isManual());
|
||||||
|
assertThat(dieselXorManual).isTrue();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void givenNonDieselAutomaticCar_whenXorOldSchool_ThenFalse() {
|
||||||
|
Car car = new Car(false, false);
|
||||||
|
boolean dieselXorManual = (car.isDiesel() && !car.isManual()) || (!car.isDiesel() && car.isManual());
|
||||||
|
assertThat(dieselXorManual).isFalse();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void givenDieselManualCar_whenXor_ThenFalse() {
|
||||||
|
Car car = new Car(true, true);
|
||||||
|
boolean dieselXorManual = car.isDiesel() ^ car.isManual();
|
||||||
|
assertThat(dieselXorManual).isFalse();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void givenDieselAutomaticCar_whenXor_ThenTrue() {
|
||||||
|
Car car = new Car(true, false);
|
||||||
|
boolean dieselXorManual = car.isDiesel() ^ car.isManual();
|
||||||
|
assertThat(dieselXorManual).isTrue();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void givenNonDieselManualCar_whenXor_ThenTrue() {
|
||||||
|
Car car = new Car(false, true);
|
||||||
|
boolean dieselXorManual = car.isDiesel() ^ car.isManual();
|
||||||
|
assertThat(dieselXorManual).isTrue();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
void givenNonDieselAutomaticCar_whenXor_ThenFalse() {
|
||||||
|
Car car = new Car(false, false);
|
||||||
|
boolean dieselXorManual = car.isDiesel() ^ car.isManual();
|
||||||
|
assertThat(dieselXorManual).isFalse();
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user