/** * Create a circuit to getValue x1 and x2 and then verify that its result is false for input * (false, true) and it is true for input (true, true). */ public void testX1andX2() { BinaryLogicalExpression circuit = factory.getBinOperation("and", new Constant(false), new Constant(true)); Assert.assertFalse(circuit.getValue()); ((Constant) circuit.getLeft()).setValue(true); Assert.assertTrue(circuit.getValue()); }
/** * Create a circuit to getValue (x1 or not(x1)) and then verify that its result is true for all * values of x1. */ public void testAlwaysTrue() { BinaryLogicalExpression circuit = factory.getBinOperation( "or", new Constant(false), factory.getUnaryOperation("not", new Constant(false))); Assert.assertTrue(circuit.getValue()); ((Constant) circuit.getLeft()).setValue(true); ((Constant) ((UnaryLogicalExpression) circuit.getRight()).getElement()).setValue(true); Assert.assertTrue(circuit.getValue()); }