Esempio n. 1
0
 def setUp(self):
     expressions = {
         'a': Expr('2'),
         'b': Expr('a*10'),
     }
     self.ant = ANT()
     self.ns = ExpressionNamespace(expressions)
     self.ns.observe('_locals', self.ant.mark_observed)
Esempio n. 2
0
 def test_extra_context(self):
     random = np.random.RandomState(seed=1)
     ns = ExpressionNamespace(self.EXPRESSIONS, {'random': random})
     ns.set_values({'data.channel.bar': 3.1})
     ns.set_value('z', 32)
     values = ns.get_values()
     self.assertTrue('z' in values)
     self.assertTrue('data.channel.bar' in values)
     self.assertEqual(values['z'], 32)
     self.assertEqual(values['f'], 31)
Esempio n. 3
0
 def test_cache(self):
     # We know for this particular seed that second and third call to the
     # generator will not return the same value.
     random = np.random.RandomState(seed=1)
     ns = ExpressionNamespace(self.EXPRESSIONS, {'random': random})
     initial = ns.get_value('g')
     self.assertEqual(initial, ns.get_value('g'))
     self.assertEqual(initial, ns.get_value('g'))
     ns.reset()
     self.assertNotEqual(initial, ns.get_value('g'))
Esempio n. 4
0
 def test_evaluation_override(self):
     ns = ExpressionNamespace(self.EXPRESSIONS)
     self.assertEqual(ns.get_value('c', {'a': 2}), 6)
     self.assertEqual(ns.get_value('a', {'a': 2}), 2)
Esempio n. 5
0
 def test_evaluation(self):
     ns = ExpressionNamespace(self.EXPRESSIONS)
     self.assertEqual(ns.get_value('c'), 2550)
     self.assertEqual(ns.get_value('e'), 20)
     self.assertEqual(ns.get_value('d.x'), 10)
     self.assertEqual(ns.get_value('f', {'data.channel.bar': 1.5}), 15)