EvalCplx: Unterschied zwischen den Versionen

Aus JACK Wiki
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
Keine Bearbeitungszusammenfassung
Zeile 1: Zeile 1:
=='''DEPRECATED'''==
Diese Funktion wird nicht mehr unterstützt.
Die Funktion [https://jack-community.org/wiki/index.php/Expand Expand] bietet die gleiche Funktionalität.
===Beschreibung===
===Beschreibung===
Die Funktion ''evalcplx'' erwartet einen String und gibt einen Wert zurück.
Die Funktion ''evalcplx'' erwartet einen String und gibt einen Wert zurück.

Version vom 29. September 2017, 13:09 Uhr

DEPRECATED

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


Beschreibung

Die Funktion evalcplx erwartet einen String und gibt einen Wert zurück.

Syntax

evalcplx(string)

Parameter

Return Value

Beispiele

JUnit Tests

[Anzeigen]

@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])");
}

Hinweise