Trim: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 19: | Zeile 19: | ||
trim('[pos=1]') | trim('[pos=1]') | ||
trim('[var=a]') | trim('[var=a]') | ||
====JUnit Tests==== | |||
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed"> | |||
@Before | |||
public void beforeTest(){ | |||
placeFillInVariable(1, OMParser.parse("hello")); | |||
placeExerciseVariable("a", OMParser.parse("hello")); | |||
} | |||
@Test public void testTrim(){ | |||
assertTrue("'hello'".equals(getEvaluator().getResultAsEvaluatorString("trim(' hello')"))); | |||
assertTrue("'hello'".equals(getEvaluator().getResultAsEvaluatorString("trim('hello ')"))); | |||
assertTrue("'hello'".equals(getEvaluator().getResultAsEvaluatorString("trim(' hello ')"))); | |||
assertTrue("'hel lo'".equals(getEvaluator().getResultAsEvaluatorString("trim(' hel lo ')"))); | |||
} | |||
@Test | |||
public void testTrimWithExpression(){ | |||
assertTrue("'w o r k'".equals(getEvaluator().getResultAsEvaluatorString("trim(trim(' w o r k '))"))); | |||
assertTrue("'w o r k'".equals(getEvaluator().getResultAsEvaluatorString("trim(trim(trim(' w o r k ')))"))); | |||
} | |||
@Test public void testTrimWithInput(){ | |||
assertTrue("'hello'".equals(getEvaluator().getResultAsEvaluatorString("trim(' [pos=1] ')"))); | |||
} | |||
@Test public void testTrimWithVariables(){ | |||
assertTrue("'hello'".equals(getEvaluator().getResultAsEvaluatorString("trim(' [var=a] ')"))); | |||
} | |||
@Test(expected=InvalidEvaluatorFunctionArgumentException.class) | |||
public void testTrimWithWrongInputCharacter(){ | |||
getEvaluator().getResultAsEvaluatorString("trim(a)"); | |||
} | |||
@Test(expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testTrimWithTwoArguments(){ | |||
getEvaluator().getResultAsEvaluatorString("trim(' a', 'a ')"); | |||
} | |||
@Test(expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testTrimWithThreeArguments(){ | |||
getEvaluator().getResultAsEvaluatorString("trim(' a', 'a ', ' a ')"); | |||
} | |||
@Test(expected=UndefinedExerciseVariableException.class) | |||
public void testTrimWithMissingExerciseVariable(){ | |||
getEvaluator().getResultAsEvaluatorString("trim('[var=j]')"); | |||
} | |||
@Test(expected=UndefinedFillInVariableException.class) | |||
public void testTrimWithMissingInput(){ | |||
getEvaluator().getResultAsEvaluatorString("trim('[pos=42]')"); | |||
} | |||
</syntaxhighlight> | |||
=== Hinweise === | === Hinweise === |
Version vom 20. Juni 2017, 16:03 Uhr
Beschreibung
Die Funktion trim entfernt aus einer Zeichenkette alle am Anfang und am Ende stehende Leerzeichen. Die Funktion erwartet einen String und gibt eine modifizierte Zeichenkette als String zurück.
Syntax
trim(String zeichenkette)
Parameter
- zeichenkette - die Zeichenkette bei der die am Anfang und Ende befindlichen Leerzeichen entfernt werden sollen
Return Value
- Gibt einen Stringzurück
Beispiele
Standardfälle
trim(' Leerzeichen wurden entfernt ') --> returns 'Leerzeichen wurden entfernt' trim(' hello') --> returns 'hello'
Benutzung mit Variablen
trim('[pos=1]') trim('[var=a]')
JUnit Tests
@Before
public void beforeTest(){
placeFillInVariable(1, OMParser.parse("hello"));
placeExerciseVariable("a", OMParser.parse("hello"));
}
@Test public void testTrim(){
assertTrue("'hello'".equals(getEvaluator().getResultAsEvaluatorString("trim(' hello')")));
assertTrue("'hello'".equals(getEvaluator().getResultAsEvaluatorString("trim('hello ')")));
assertTrue("'hello'".equals(getEvaluator().getResultAsEvaluatorString("trim(' hello ')")));
assertTrue("'hel lo'".equals(getEvaluator().getResultAsEvaluatorString("trim(' hel lo ')")));
}
@Test
public void testTrimWithExpression(){
assertTrue("'w o r k'".equals(getEvaluator().getResultAsEvaluatorString("trim(trim(' w o r k '))")));
assertTrue("'w o r k'".equals(getEvaluator().getResultAsEvaluatorString("trim(trim(trim(' w o r k ')))")));
}
@Test public void testTrimWithInput(){
assertTrue("'hello'".equals(getEvaluator().getResultAsEvaluatorString("trim(' [pos=1] ')")));
}
@Test public void testTrimWithVariables(){
assertTrue("'hello'".equals(getEvaluator().getResultAsEvaluatorString("trim(' [var=a] ')")));
}
@Test(expected=InvalidEvaluatorFunctionArgumentException.class)
public void testTrimWithWrongInputCharacter(){
getEvaluator().getResultAsEvaluatorString("trim(a)");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testTrimWithTwoArguments(){
getEvaluator().getResultAsEvaluatorString("trim(' a', 'a ')");
}
@Test(expected=UnsupportedEvaluatorFunctionException.class)
public void testTrimWithThreeArguments(){
getEvaluator().getResultAsEvaluatorString("trim(' a', 'a ', ' a ')");
}
@Test(expected=UndefinedExerciseVariableException.class)
public void testTrimWithMissingExerciseVariable(){
getEvaluator().getResultAsEvaluatorString("trim('[var=j]')");
}
@Test(expected=UndefinedFillInVariableException.class)
public void testTrimWithMissingInput(){
getEvaluator().getResultAsEvaluatorString("trim('[pos=42]')");
}
Hinweise
- Es werden keine Leerzeichen zwischen den Wörtern der Zeichenkette entfernt.
- Im Moment werden jedoch alle Leerzeichen entfernt!