EndsWith: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Spobel (Diskussion | Beiträge) (→Syntax) |
Spobel (Diskussion | Beiträge) |
||
Zeile 146: | Zeile 146: | ||
* Es wird zwischen Groß- und Kleinschreibung unterschieden. | * Es wird zwischen Groß- und Kleinschreibung unterschieden. | ||
[[Kategorie:Evaluatorfunktion]] | [[Kategorie:Evaluatorfunktion]][[Kategorie:Zeichenkettenfunktionen]] |
Version vom 4. Oktober 2017, 13:26 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(Zeichenkette zeichenkette, Zeichenkette 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
[Anzeigen]
@BeforeClass
public static void beforeTest() {
fillInVariableMap.put(7, OMConverter.toObject("<OMOBJ><OMSTR>testinput</OMSTR></OMOBJ>"));
exerciseVariableMap.put("g", OMConverter.toObject("<OMOBJ><OMSTR>testinput</OMSTR></OMOBJ>"));
}
@Test
public void testEndsWith1() {
assertTrue(Evaluator.getBooleanResult("endsWith('1567','7')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWith2() {
assertTrue(Evaluator.getBooleanResult("endsWith('hallo','o')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWith3() {
assertTrue(Evaluator.getBooleanResult("endsWith('hallo','hallo')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWith4() {
assertTrue(Evaluator.getBooleanResult("endsWith('1567.','.' )", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWith5() {
assertTrue(Evaluator.getBooleanResult("endsWith('test ',' ')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWith6() {
assertTrue(Evaluator.getBooleanResult("endsWith('leererVergleich','')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWith7() {
assertFalse(Evaluator.getBooleanResult("endsWith('hallo','O')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWith8() {
assertFalse(Evaluator.getBooleanResult("endsWith('lo','hallo')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWithWithInput1() {
assertTrue(Evaluator.getBooleanResult("endsWith('[pos=7] ','')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWithWithInput2() {
assertTrue(Evaluator.getBooleanResult("endsWith('test01','[pos=1][pos=2]')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWithWithInput3() {
assertTrue(Evaluator.getBooleanResult("endsWith('[pos=7]','put')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWithWithVariables1() {
assertTrue(Evaluator.getBooleanResult("endsWith('[var=g] ','')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWithWithVariables2() {
assertTrue(Evaluator.getBooleanResult("endsWith('test01','[var=a][var=b]')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWithWithVariables3() {
assertTrue(Evaluator.getBooleanResult("endsWith('[var=g]','put')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEndsWithWithExpressions() {
assertTrue(Evaluator.getBooleanResult("endsWith(endsWith('1', '1'), endsWith('2', '2'))", exerciseVariableMap, fillInVariableMap));
}
@Test(expected=ParserException.class)
public void testEndsWithWithWrongInputCharacter() {
Evaluator.getBooleanResult("endsWith(ab, ab)", exerciseVariableMap, fillInVariableMap);
fail();
}
@Test
public void testEndsWithWithTwoRationalArguments() {
Evaluator.getBooleanResult("endsWith(2, 2)", exerciseVariableMap, fillInVariableMap);
}
@Test(expected=FunctionInvalidNumberOfArgumentsException.class)
public void testEndsWithWithOneArgument() {
Evaluator.getBooleanResult("endsWith('a')", exerciseVariableMap, fillInVariableMap);
fail();
}
@Test(expected=FunctionInvalidNumberOfArgumentsException.class)
public void testEndsWithThreeArguments() {
Evaluator.getBooleanResult("endsWith('a', 'a', 'a')", exerciseVariableMap, fillInVariableMap);
fail();
}
@Test(expected=UndefinedExerciseVariableException.class)
public void testEndsWithWithMissingExerciseVariable() {
Evaluator.getBooleanResult("endsWith('[var=j]', 'a')", exerciseVariableMap, fillInVariableMap);
fail();
}
@Test(expected=UndefinedFillInVariableException.class)
public void testEndsWithWithMissingInput() {
Evaluator.getBooleanResult("endsWith('[pos=42]', 'a')", exerciseVariableMap, fillInVariableMap);
fail();
}
Hinweise
- Es wird zwischen Groß- und Kleinschreibung unterschieden.