EvalCplx: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
 
(5 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
===Beschreibung===
=='''DEPRECATED'''==
Die Funktion ''evalcplx'' erwartet einen String und gibt einen Wert zurück.
Diese Funktion wird nicht mehr unterstützt.
 
Die Funktion [[Expand]] bietet die gleiche Funktionalität.
===Syntax===
==Zugehörige Evaluatoren==
evalcplx(string)
*'''MathEvaluator'''
 
===Parameter===
 
===Return Value===
 
===Beispiele===
 
====JUnit Tests====
<span class="mw-customtoggle-myDivision">[Anzeigen]</span>
<syntaxhighlight lang="java" class="mw-collapsible mw-collapsed" id="mw-customcollapsible-myDivision">
@Before
public void beforeTest() {
  placeFillInVariable(1, OMParser.parse("2"));
  placeFillInVariable(2, OMParser.parse("I"));
  placeExerciseVariable("a", OMParser.parse("2"));
  placeExerciseVariable("b", OMParser.parse("I"));
}
 
@Test
public void testEvalCplx() {
  assertTrue(getEvaluator().getBooleanResult("evalcplx('4/2')=='2'"));
  assertTrue("'-1'".equals(getEvaluator().getResultAsEvaluatorString("evalcplx('I^2')")));
  assertTrue("'-2'".equals(getEvaluator().getResultAsEvaluatorString("evalcplx('2*I^2')")));
  assertTrue("'I*2'".equals(getEvaluator().getResultAsEvaluatorString("evalcplx('sqrt(-4)')")));
  assertTrue("'-4'".equals(getEvaluator().getResultAsEvaluatorString("evalcplx('sqrt(-4)^2')")));
}
@Test
public void testEvalCplxWithInput(){
  assertTrue("'-1'".equals(getEvaluator().getResultAsEvaluatorString("evalcplx('I^[pos=1]')")));
  assertTrue("'-1'".equals(getEvaluator().getResultAsEvaluatorString("evalcplx('[pos=2]^2')")));
}
@Test
public void testEvalCplxWithVariables(){
  assertTrue("'-1'".equals(getEvaluator().getResultAsEvaluatorString("evalcplx('I^[var=a]')")));
  assertTrue("'-1'".equals(getEvaluator().getResultAsEvaluatorString("evalcplx('[var=b]^2')")));
}
@Test
public void testEvalCplxWithONECharacter(){
  assertTrue("'a'".equals(getEvaluator().getResultAsEvaluatorString("evalcplx(a)")));
}
@Test(expected=InvalidCASFunctionArgumentException.class)
public void testEvalCplxWithEmptyStringArgument(){
  getEvaluator().getResultAsEvaluatorString("evalcplx('')");
}
@Test(expected=InvalidCASFunctionArgumentException.class)
public void testEvalCplxWithEmptyArgument(){
  getEvaluator().getResultAsEvaluatorString("evalcplx()");
}
@Test(expected=InvalidCASFunctionArgumentException.class)
public void testEvalCplxWithWrongInputCodeInjection(){
  getEvaluator().getResultAsEvaluatorString("evalcplx('I]; List[1,2')");
}
@Test(expected=UndefinedExerciseVariableException.class)
public void testEvalCplxWithoutExerciseVariable() {
  getEvaluator().getResultAsEvaluatorString("evalcplx([var=j])");
}
@Test(expected=UndefinedFillInVariableException.class)
public void testEvalCplxWithoutInput() {
  getEvaluator().getResultAsEvaluatorString("evalcplx([pos=42])");
}
</syntaxhighlight>
===Hinweise===
 
[[Kategorie:Evaluatorfunktion]]

Aktuelle Version vom 8. Dezember 2023, 10:32 Uhr

DEPRECATED

Diese Funktion wird nicht mehr unterstützt. Die Funktion Expand bietet die gleiche Funktionalität.

Zugehörige Evaluatoren

  • MathEvaluator