Beispiel #1
0
 def testGivenExpressionWithOneVariableWhenSimplifyNameThenSameExpressionIsObtained(
         self):
     variable = VariableBuilder().build()
     expression = ExpressionBuilder().term(variable).build()
     expression2 = expression.clon()
     expression.simplify_variable(variable.name)
     self.assertTrue(expression.equal(expression2))
Beispiel #2
0
 def testGivenExpressionWithTwoVariablesSameNameWhenSimplifyThenExpressionWithOneVariableWithCorrectValueIsObtained(
         self):
     variable1 = VariableBuilder().name('x').build()
     expression = ExpressionBuilder().term(variable1).term(variable1).term(
         VariableBuilder().name('y').build()).default_constant().build()
     expression.simplify_variable(variable1.name)
     self.assertTrue(expression.get_value_variable(variable1.name),
                     2 * variable1.value)
Beispiel #3
0
 def testGivenExpressionWithTwoVariablesWithInverseValuesWhenSimplifyThenExpressionWithNoVariablesAndConstantWithValue0IsObtained(
         self):
     variable1 = VariableBuilder().build()
     variable2 = variable1.clon()
     variable2.multiply(-1.0)
     expression = ExpressionBuilder().term(variable1).term(
         variable2).build()
     expression.simplify_variable(variable1.name)
     self.assertEqual(expression.get_value_constant(), 0.0)
     self.assertEqual(expression.get_value_variable(variable1.name), 0.0)
Beispiel #4
0
 def testGivenEmpyExpressionWhenSimplifyNameThenEmptyExpressionIsObtained(
         self):
     expression = ExpressionBuilder().build()
     expression.simplify_variable('any_name')
     self.assertTrue(expression.empty())