Equals: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 23: | Zeile 23: | ||
====JUnit Tests==== | ====JUnit Tests==== | ||
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed"> | <span class="mw-customtoggle-myDivision">[Anzeigen]</span> | ||
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myDivision"> | |||
@Before | @Before | ||
public void beforeTest() { | public void beforeTest() { |
Version vom 27. Juni 2017, 09:11 Uhr
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
[Anzeigen]
@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.