Equal
Zur Navigation springen
Zur Suche springen
Beschreibung
Die Funktionen equal vergleicht zwei Ausdrücke auf Gleichheit miteinander. Wenn die beiden Ausdrücke übereinstimmen gibt die Funktion true zurück, ansonsten false.
Syntax
a == b
Parameter
- a - string oder double
- b - string oder double
Return Value
- Gibt einen Boolean zurück.
Beispiele
<math>2+3==5</math> --> returns true
'world of math' == 'world of math' --> returns true
JUnit Tests
@Before
public void beforeTest() {
placeFillInVariable(1, OMParser.parse("7"));
placeFillInVariable(2, OMParser.parse("2"));
placeExerciseVariable("a", OMParser.parse("7"));
placeExerciseVariable("b", OMParser.parse("2"));
}
@Test
public void testEqual() {
assertTrue(getEvaluator().getBooleanResult("1/2 == 0.5"));
assertTrue(getEvaluator().getBooleanResult("0.7 == 7/10"));
assertTrue(getEvaluator().getBooleanResult("4/2 == 2"));
assertTrue(getEvaluator().getBooleanResult("'world of math' == 'world of math'"));
assertTrue(getEvaluator().getBooleanResult("'' == ''"));
assertTrue(!getEvaluator().getBooleanResult("'' == 1"));
assertTrue(!getEvaluator().getBooleanResult("1 = ''"));
assertTrue(getEvaluator().getBooleanResult("1 = '1'"));
}
@Test
public void testEqualWithVariables() {
assertTrue(getEvaluator().getBooleanResult("[var=a] == 7"));
assertTrue(getEvaluator().getBooleanResult("2 == [var=b]"));
}
@Test
public void testEqualWithInput() {
assertTrue(getEvaluator().getBooleanResult("[pos=1] == 7"));
assertTrue(getEvaluator().getBooleanResult("2 == [pos=2]"));
}
@Test
public void testEqualWithEncapsulation(){
assertTrue(!getEvaluator().getBooleanResult("1 == (1 == 0)"));
assertTrue(!getEvaluator().getBooleanResult("1 == (1 == (1 == 0))"));
assertTrue(!getEvaluator().getBooleanResult("1 == (1 == (1 == (1 == (1 == 0))))"));
assertTrue(getEvaluator().getBooleanResult("1 == (1 == (1 == (1 == (1 == 1))))"));
assertTrue(!getEvaluator().getBooleanResult("((((1 == 0) == 1) == 1) == 1) == 1"));
assertTrue(getEvaluator().getBooleanResult("((((1 == 1) == 1) == 1) == 1) == 1"));
}
@Test(expected=ParserMismatchException.class)
public void testEqualWithWrongInputCharacter() {
getEvaluator().getBooleanResult("1 == a");
}
@Test (expected=UndefinedExerciseVariableException.class)
public void testEqualWithMissingExcerciseVariable() {
getEvaluator().getBooleanResult("[var=j] == 2");
}
@Test (expected=UndefinedFillInVariableException.class)
public void testEqualWithMissingInput() {
getEvaluator().getBooleanResult("[pos=42] == 2");
}
Hinweise
- Die Funktion equal kann auch mit einfachen mathematischen Operationen umgehen, wie z.B. 2+3.