EndsWith: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 22: | Zeile 22: | ||
endsWith('[var=b]','[pos=2]') | endsWith('[var=b]','[pos=2]') | ||
====JUnit Tests==== | |||
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed"> | |||
@Before | |||
public void beforeTest() { | |||
placeFillInVariable(1, OMParser.parse("0")); | |||
placeFillInVariable(2, OMParser.parse("1")); | |||
placeFillInVariable(3, OMParser.parse("testinput")); | |||
placeExerciseVariable("a", OMParser.parse("0")); | |||
placeExerciseVariable("b", OMParser.parse("1")); | |||
placeExerciseVariable("c", OMParser.parse("testinput")); | |||
} | |||
@Test | |||
public void testEndsWith() { | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('1567','7')")); | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('hallo','o')")); | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('hallo','hallo')")); | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('1567.','.' )")); | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('test ',' ')")); | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('leererVergleich','')")); | |||
assertFalse(getEvaluator().getBooleanResult("endsWith('hallo','O')")); | |||
assertFalse(getEvaluator().getBooleanResult("endsWith('lo','hallo')")); | |||
} | |||
@Test | |||
public void testEndsWithWithInput() { | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('[pos=3] ',' ')")); | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('[pos=3]','put')")); | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('test01','[pos=1][pos=2]')")); | |||
} | |||
@Test | |||
public void testEndsWithWithVariables() { | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('[var=c] ',' ')")); | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('[var=c]','put')")); | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('test01','[var=a][var=b]')")); | |||
} | |||
@Test | |||
public void testEndsWithWithExpressions() { | |||
assertTrue(getEvaluator().getBooleanResult("endsWith('endsWith('1', '1')', 'endsWith('2', '2')')")); | |||
} | |||
@Test(expected=InvalidEvaluatorFunctionArgumentException.class) | |||
public void testEndsWithWithWrongInputCharacter(){ | |||
getEvaluator().getBooleanResult("endsWith(a, a)"); | |||
} | |||
@Test(expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testEndsWithWithTwoRationalArguments(){ | |||
getEvaluator().getBooleanResult("endsWith(2, 2)"); | |||
} | |||
@Test(expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testEndsWithWithOneArgument(){ | |||
getEvaluator().getBooleanResult("endsWith('a')"); | |||
} | |||
@Test(expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testEndsWithThreeArguments(){ | |||
getEvaluator().getBooleanResult("endsWith('a', 'a', 'a')"); | |||
} | |||
@Test(expected=UndefinedExerciseVariableException.class) | |||
public void testEndsWithWithMissingExerciseVariable(){ | |||
getEvaluator().getBooleanResult("endsWith('[var=j]', 'a')"); | |||
} | |||
@Test(expected=UndefinedFillInVariableException.class) | |||
public void testEndsWithWithMissingInput(){ | |||
getEvaluator().getBooleanResult("endsWith('[pos=42]', 'a')"); | |||
} | |||
</syntaxhighlight> | |||
=== Hinweise === | === Hinweise === | ||
* Es wird zwischen Groß- und Kleinschreibung unterschieden. | * Es wird zwischen Groß- und Kleinschreibung unterschieden. | ||
[[Kategorie:Evaluatorfunktion]] | [[Kategorie:Evaluatorfunktion]] |
Version vom 20. Juni 2017, 15:38 Uhr
Beschreibung
Die Funktion endsWith prüft, ob eine Zeichenkette mit einer bestimmten Zeichenkette endet. Die Funktion erwartet zwei Strings und gibt einen Boolean zurück.
Syntax
endsWith(String zeichenkette, String ende)
Parameter
- zeichenkette - Zeichenkette, deren Ende geprüft wird
- ende - Zeichenkette, die mit dem Ende der ersten abgeglichen wird
Return Value
- Gibt einen Boolean zurück
Beispiele
Standardfälle
endsWith('hallo','lo') --> returns true endsWith('JACK','k') --> returns false
Benutzung von Variablen
endsWith('[pos=1]','ende') endsWith('anfang','[var=a]') endsWith('[var=b]','[pos=2]')
JUnit Tests
@Before
public void beforeTest() {
placeFillInVariable(1, OMParser.parse("0"));
placeFillInVariable(2, OMParser.parse("1"));
placeFillInVariable(3, OMParser.parse("testinput"));
placeExerciseVariable("a", OMParser.parse("0"));
placeExerciseVariable("b", OMParser.parse("1"));
placeExerciseVariable("c", OMParser.parse("testinput"));
}
@Test
public void testEndsWith() {
assertTrue(getEvaluator().getBooleanResult("endsWith('1567','7')"));
assertTrue(getEvaluator().getBooleanResult("endsWith('hallo','o')"));
assertTrue(getEvaluator().getBooleanResult("endsWith('hallo','hallo')"));
assertTrue(getEvaluator().getBooleanResult("endsWith('1567.','.' )"));
assertTrue(getEvaluator().getBooleanResult("endsWith('test ',' ')"));
assertTrue(getEvaluator().getBooleanResult("endsWith('leererVergleich','')"));
assertFalse(getEvaluator().getBooleanResult("endsWith('hallo','O')"));
assertFalse(getEvaluator().getBooleanResult("endsWith('lo','hallo')"));
}
@Test
public void testEndsWithWithInput() {
assertTrue(getEvaluator().getBooleanResult("endsWith('[pos=3] ',' ')"));
assertTrue(getEvaluator().getBooleanResult("endsWith('[pos=3]','put')"));
assertTrue(getEvaluator().getBooleanResult("endsWith('test01','[pos=1][pos=2]')"));
}
@Test
public void testEndsWithWithVariables() {
assertTrue(getEvaluator().getBooleanResult("endsWith('[var=c] ',' ')"));
assertTrue(getEvaluator().getBooleanResult("endsWith('[var=c]','put')"));
assertTrue(getEvaluator().getBooleanResult("endsWith('test01','[var=a][var=b]')"));
}
@Test
public void testEndsWithWithExpressions() {
assertTrue(getEvaluator().getBooleanResult("endsWith('endsWith('1', '1')', 'endsWith('2', '2')')"));
}
@Test(expected=InvalidEvaluatorFunctionArgumentException.class)
public void testEndsWithWithWrongInputCharacter(){
getEvaluator().getBooleanResult("endsWith(a, a)");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testEndsWithWithTwoRationalArguments(){
getEvaluator().getBooleanResult("endsWith(2, 2)");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testEndsWithWithOneArgument(){
getEvaluator().getBooleanResult("endsWith('a')");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testEndsWithThreeArguments(){
getEvaluator().getBooleanResult("endsWith('a', 'a', 'a')");
}
@Test(expected=UndefinedExerciseVariableException.class)
public void testEndsWithWithMissingExerciseVariable(){
getEvaluator().getBooleanResult("endsWith('[var=j]', 'a')");
}
@Test(expected=UndefinedFillInVariableException.class)
public void testEndsWithWithMissingInput(){
getEvaluator().getBooleanResult("endsWith('[pos=42]', 'a')");
}
Hinweise
- Es wird zwischen Groß- und Kleinschreibung unterschieden.