def test_EvalField_editor(self):
        c = self.EvalFieldTest()

        codeGen = Python2CodeGenerator('test')

        c.x.constantValue = 10.0
        c.y.constantValue = 20.0

        self.assertEqual(10.0, c.x.getValueForEditor())
        self.assertEqual(20.0, c.y.getValueForEditor())

        self.assertEqual(
            Py.Call(target=Py.Load(name='C'),
                    args=[
                        Py.FloatLiteral(value='10.0'),
                        Py.FloatLiteral(value='20.0')
                    ]), c.__py_evalmodel__(codeGen))

        x_expr = EmbeddedPython2Expr.fromText('a+b')
        y_expr = EmbeddedPython2Expr.fromText('c+d')
        c.x.expr = x_expr
        c.y.expr = y_expr

        self.assertEqual(10.0, c.x.getValueForEditor())
        self.assertEqual(20.0, c.y.getValueForEditor())

        self.assertEqual(
            Py.Call(target=Py.Load(name='C'),
                    args=[x_expr.model, y_expr.model]),
            c.__py_evalmodel__(codeGen))
예제 #2
0
 def test_ComplexLit(self):
     self._buildTest(
         Py.Add(x=Py.FloatLiteral(value='3.14'),
                y=Py.ImaginaryLiteral(value='2.18')),
         ComplexLit(3.14, 2.18))
예제 #3
0
 def test_IntLit(self):
     self._buildTest(Py.FloatLiteral(value='3.14'), FloatLit(3.14))
예제 #4
0
 def build(self):
     return Py.Add(x=Py.FloatLiteral(value=repr(self.real)),
                   y=Py.ImaginaryLiteral(value=repr(self.imag)))
예제 #5
0
 def build(self):
     return Py.FloatLiteral(value=repr(self.value))
 def __py_evalmodel__(self, codeGen):
     return Py.FloatLiteral(value=repr(self.value))