Concat: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
Keine Bearbeitungszusammenfassung |
||
Zeile 20: | Zeile 20: | ||
concat('anfang','[var=a]') | concat('anfang','[var=a]') | ||
concat('[var=b]','[pos=2]') | concat('[var=b]','[pos=2]') | ||
====JUnit Tests==== | |||
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed"> | |||
@Before | |||
public void beforeTest() { | |||
placeFillInVariable(1, OMParser.parse("Hallo")); | |||
placeExerciseVariable("a", OMParser.parse("Hallo")); | |||
} | |||
@Test | |||
public void testConcat() { | |||
assertTrue("'HalloHallo'".equals(getEvaluator().getResultAsEvaluatorString("concat('Hallo','Hallo')"))); | |||
assertTrue("'Hallo Hallo'".equals(getEvaluator().getResultAsEvaluatorString("concat('Hallo ',' Hallo')"))); | |||
assertTrue("' '".equals(getEvaluator().getResultAsEvaluatorString("concat(' ','')"))); | |||
assertTrue("' '".equals(getEvaluator().getResultAsEvaluatorString("concat('',' ')"))); | |||
} | |||
@Test | |||
public void testConcatWithInput() { | |||
assertTrue("'HalloHallo'".equals(getEvaluator().getResultAsEvaluatorString("concat('[pos=1]','[pos=1]')"))); | |||
} | |||
@Test | |||
public void testConcatWithVariables() { | |||
assertTrue("'HalloHallo'".equals(getEvaluator().getResultAsEvaluatorString("concat('[var=a]','[var=a]')"))); | |||
} | |||
@Test (expected=InvalidEvaluatorFunctionArgumentException.class) | |||
public void testConcatWithWrongInputCharacter() { | |||
getEvaluator().getResultAsEvaluatorString("concat(a,'abcd')"); | |||
} | |||
@Test (expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testConcatWithOneArgument() { | |||
getEvaluator().getResultAsEvaluatorString("concat('abcd')"); | |||
} | |||
@Test (expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testConcatWithOneRationalAndOneTextArgument() { | |||
getEvaluator().getResultAsEvaluatorString("concat(12, 'abcd')"); | |||
} | |||
@Test (expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testConcatWithTwoRationalArguments() { | |||
getEvaluator().getResultAsEvaluatorString("concat(12, 14)"); | |||
} | |||
@Test (expected=UnsupportedEvaluatorFunctionException.class) | |||
public void testConcatWithThreeArguments() { | |||
getEvaluator().getResultAsEvaluatorString("concat('abcd', 'efg', 'hij')"); | |||
} | |||
@Test (expected=UndefinedExerciseVariableException.class) | |||
public void testConcatWithMissingExcerciseVariable() { | |||
getEvaluator().getResultAsEvaluatorString("concat('[var=j]','abcd')"); | |||
} | |||
@Test (expected=UndefinedFillInVariableException.class) | |||
public void testConcatWithMissingInput() { | |||
getEvaluator().getResultAsEvaluatorString("concat([pos=42],'abcd')"); | |||
} | |||
</syntaxhighlight> | |||
=== Hinweise === | === Hinweise === | ||
[[Kategorie:Evaluatorfunktion]] | [[Kategorie:Evaluatorfunktion]] |
Version vom 20. Juni 2017, 15:37 Uhr
Beschreibung
Die Funktion concat fügt einer Zeichenkette eine zweite Zeichenkette unmittelbar an, so dass eine einzige Zeichenkette entsteht. Die Funktion erwartet zwei Strings und gibt einen String zurück.
Syntax
concat(String zeichenkette1, String zeichenkette2)
Parameter
- zeichenkette1 - erste Zeichenkette
- zeichenkette2 - zweite Zeichenkette, die der ersten angehängt werden soll
Return Value
- Gibt einen String zurück
Beispiele
Standardfälle
concat('hallo','welt') --> returns 'hallowelt'
Benutzung von Variablen
concat('[pos=1]','ende') concat('anfang','[var=a]') concat('[var=b]','[pos=2]')
JUnit Tests
@Before
public void beforeTest() {
placeFillInVariable(1, OMParser.parse("Hallo"));
placeExerciseVariable("a", OMParser.parse("Hallo"));
}
@Test
public void testConcat() {
assertTrue("'HalloHallo'".equals(getEvaluator().getResultAsEvaluatorString("concat('Hallo','Hallo')")));
assertTrue("'Hallo Hallo'".equals(getEvaluator().getResultAsEvaluatorString("concat('Hallo ',' Hallo')")));
assertTrue("' '".equals(getEvaluator().getResultAsEvaluatorString("concat(' ','')")));
assertTrue("' '".equals(getEvaluator().getResultAsEvaluatorString("concat('',' ')")));
}
@Test
public void testConcatWithInput() {
assertTrue("'HalloHallo'".equals(getEvaluator().getResultAsEvaluatorString("concat('[pos=1]','[pos=1]')")));
}
@Test
public void testConcatWithVariables() {
assertTrue("'HalloHallo'".equals(getEvaluator().getResultAsEvaluatorString("concat('[var=a]','[var=a]')")));
}
@Test (expected=InvalidEvaluatorFunctionArgumentException.class)
public void testConcatWithWrongInputCharacter() {
getEvaluator().getResultAsEvaluatorString("concat(a,'abcd')");
}
@Test (expected=UnsupportedEvaluatorFunctionException.class)
public void testConcatWithOneArgument() {
getEvaluator().getResultAsEvaluatorString("concat('abcd')");
}
@Test (expected=UnsupportedEvaluatorFunctionException.class)
public void testConcatWithOneRationalAndOneTextArgument() {
getEvaluator().getResultAsEvaluatorString("concat(12, 'abcd')");
}
@Test (expected=UnsupportedEvaluatorFunctionException.class)
public void testConcatWithTwoRationalArguments() {
getEvaluator().getResultAsEvaluatorString("concat(12, 14)");
}
@Test (expected=UnsupportedEvaluatorFunctionException.class)
public void testConcatWithThreeArguments() {
getEvaluator().getResultAsEvaluatorString("concat('abcd', 'efg', 'hij')");
}
@Test (expected=UndefinedExerciseVariableException.class)
public void testConcatWithMissingExcerciseVariable() {
getEvaluator().getResultAsEvaluatorString("concat('[var=j]','abcd')");
}
@Test (expected=UndefinedFillInVariableException.class)
public void testConcatWithMissingInput() {
getEvaluator().getResultAsEvaluatorString("concat([pos=42],'abcd')");
}