Equals: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Zeile 15: Zeile 15:
==== Standardfälle ====
==== Standardfälle ====
  equals('hallo','hallo')  --> returns true
  equals('hallo','hallo')  --> returns true
  equals('JACK','jack')  --> returns false
  equals('JACK','jack')  --> returns false


==== Benutzung von Variablen ====
==== Benutzung von Variablen ====
  equals('[pos=1]','text')
  equals('[pos=1]','text')
  equals('text','[var=a]')
  equals('text','[var=a]')
  equals('[var=b]','[pos=2]')
  equals('[var=b]','[pos=2]')
====JUnit Tests====
<span class="mw-customtoggle-myDivision">[Anzeigen]</span>
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myDivision">
@BeforeClass
public static void beforeTest() {
fillInVariableMap.put(7, OMConverter.toObject("<OMOBJ><OMSTR>hallo</OMSTR></OMOBJ>"));
fillInVariableMap.put(8, OMConverter.toObject("<OMOBJ><OMSTR>Hallo</OMSTR></OMOBJ>"));
exerciseVariableMap.put("g", OMConverter.toObject("<OMOBJ><OMSTR>hallo</OMSTR></OMOBJ>"));
exerciseVariableMap.put("h", OMConverter.toObject("<OMOBJ><OMSTR>Hallo</OMSTR></OMOBJ>"));
}
@Test
public void testEquals1() {
assertTrue(Evaluator.getBooleanResult("equals('hallo','hallo')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEquals2() {
assertFalse(Evaluator.getBooleanResult("equals('HALLO','hallo')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEquals3() {
assertFalse(Evaluator.getBooleanResult("equals('hallo welt','hallowelt')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEquals4() {
assertTrue(Evaluator.getBooleanResult("equals(' ',' ')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEquals5() {
assertFalse(Evaluator.getBooleanResult("equals(' ','  ')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEquals6() {
assertTrue(Evaluator.getBooleanResult("equals('','')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEquals7() {
assertTrue(Evaluator.getBooleanResult("equals('1', '1')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEquals8() {
assertTrue(Evaluator.getBooleanResult("equals('3+5','8')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEqualsWithInput1() {
assertTrue(Evaluator.getBooleanResult("equals('[pos=7]','hallo')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEqualsWithInput2() {
assertFalse(Evaluator.getBooleanResult("equals('hallo','[pos=8]')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEqualsWithVariables1() {
assertTrue(Evaluator.getBooleanResult("equals('[var=g]','hallo')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEqualsWithVariables2() {
assertFalse(Evaluator.getBooleanResult("equals('hallo','[var=h]')", exerciseVariableMap, fillInVariableMap));
}
@Test
public void testEqualsWithExpressions() {
assertTrue(Evaluator.getBooleanResult("equals(equals('a','a'), equals('b','b'))", exerciseVariableMap, fillInVariableMap));
}
@Test (expected=ParserException.class)
public void testEqualsWithWrongInputCharacter() {
Evaluator.getBooleanResult("equals(ab, ab)", exerciseVariableMap, fillInVariableMap);
fail();
}
@Test (expected=FunctionInvalidNumberOfArgumentsException.class)
public void testEqualsWithThreeArguments() {
Evaluator.getBooleanResult("equals('hallo','hallo', 'test')", exerciseVariableMap, fillInVariableMap);
fail();
}
@Test (expected=UndefinedFillInVariableException.class)
public void testEqualsWithMissingInput() {
Evaluator.getBooleanResult("equals('[pos=42]','hallo')", exerciseVariableMap, fillInVariableMap);
fail();
}
@Test (expected=UndefinedExerciseVariableException.class)
public void testEqualsWithMissingExerciseVariable() {
Evaluator.getBooleanResult("equals('[var=j]','hallo')", exerciseVariableMap, fillInVariableMap);
fail();
}
</syntaxhighlight>


=== Hinweise ===
=== Hinweise ===

Version vom 25. September 2018, 09:27 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(Zeichenkette zeichenkette1, Zeichenkette zeichenkette2)

Parameter

  • zeichenkette1 - erste zu vergleichende Zeichenkette
  • zeichenkette2 - zweite zu vergleichende Zeichenkette

Return Value

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]')

Hinweise

  • Es wird zwischen Groß- und Kleinschreibung unterschieden.
  • Die Funktion equals vergleicht zwei strings, auch Leerzeichen werden gezählt.