Equals
Zur Navigation springen
Zur Suche springen
Beschreibung
Die Funktion equals vergleicht zwei Zeichenketten auf ihre exakte Übereinstimmung. Die Funktion erwartet zwei Strings und gibt einen Boolean zurück.
Syntax
equals(String zeichenkette1, String zeichenkette2)
Parameter
- zeichenkette1 - erste zu vergleichende Zeichenkette
- zeichenkette2 - zweite zu vergleichende Zeichenkette
Return Value
- Gibt einen Boolean zurück
Beispiele
Standardfälle
equals('hallo','hallo') --> returns true equals('JACK','jack') --> returns false
Benutzung von Variablen
equals('[pos=1]','text') equals('text','[var=a]') equals('[var=b]','[pos=2]')
JUnit Tests
@Before
public void beforeTest() {
placeFillInVariable(1, OMParser.parse("hallo"));
placeFillInVariable(2, OMParser.parse("Hallo"));
placeExerciseVariable("a", OMParser.parse("hallo"));
placeExerciseVariable("b", OMParser.parse("HALLO"));
}
@Test
public void testEquals() {
assertTrue(getEvaluator().getBooleanResult("equals('hallo','hallo')"));
assertFalse(getEvaluator().getBooleanResult("equals('HALLO','hallo')"));
assertFalse(getEvaluator().getBooleanResult("equals('hallo welt','hallowelt')"));
assertTrue(getEvaluator().getBooleanResult("equals(' ',' ')"));
assertFalse(getEvaluator().getBooleanResult("equals(' ',' ')"));
assertTrue(getEvaluator().getBooleanResult("equals('','')"));
assertTrue(getEvaluator().getBooleanResult("equals(1, '1')"));
}
@Test
public void testEqualsWithInput() {
assertTrue(getEvaluator().getBooleanResult("equals('[pos=1]','hallo')"));
assertFalse(getEvaluator().getBooleanResult("equals('hallo','[pos=2]')"));
}
@Test
public void testEqualsWithVariables() {
assertTrue(getEvaluator().getBooleanResult("equals('[var=a]','hallo')"));
assertFalse(getEvaluator().getBooleanResult("equals('hallo','[var=b]')"));
}
@Test
public void testEqualsWithExpressions() {
assertTrue(getEvaluator().getBooleanResult("equals('equals('a','a')', 'equals('b','b')')"));
}
@Test (expected=InvalidEvaluatorFunctionArgumentException.class)
public void testEqualsWithWrongInputCharacter() {
getEvaluator().getBooleanResult("equals(a, a)");
}
@Test (expected=UnsupportedEvaluatorFunctionException.class)
public void testEqualsWithThreeArguments() {
getEvaluator().getBooleanResult("equals('hallo','hallo', 'test')");
}
@Test (expected=UndefinedFillInVariableException.class)
public void testEqualsWithMissingInput() {
getEvaluator().getBooleanResult("equals('[pos=42]','hallo')");
}
@Test (expected=UndefinedExerciseVariableException.class)
public void testEqualsWithMissingExerciseVariable() {
getEvaluator().getBooleanResult("equals('[var=j]','hallo')");
}
Hinweise
- Es wird zwischen Groß- und Kleinschreibung unterschieden.
- Die Funktion equals vergleicht zwei strings, auch Leerzeichen werden gezählt.