def test_macro_expansion_to_int(self):
   n = Node("node")
   n.create_parameter("p1", 1)
   n.create_parameter("p2", "${p1}")
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p2").expanded_value, 1)
 def test_macro_used_in_expression(self):
   n = Node("node")
   n.create_parameter("p1", "2")
   n.create_parameter("p2", "$((1+${p1}))")
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p2").expanded_value, 3)
示例#3
0
 def test_save_node_with_string_parameter(self):
   node = Node("node")
   node.create_parameter("p1", "v1")
   node.flatten()
   node.expand()
   node.save()
   retrieved = Node.objects.get(name="node")
   self.assertEqual(node, retrieved)
   self.assertEqual(node.get_parameter("p1").expanded_value, retrieved.get_parameter("p1").expanded_value)
示例#4
0
 def test_save_node_with_list_parameter2(self):
   node = Node("node")
   l = [1, "b", 3]
   node.create_parameter("list", l)
   node.flatten()
   node.expand()
   node.save()
   retrieved = Node.objects.get(name="node")
   self.assertEqual(retrieved.get_parameter("list").expanded_value, l)
示例#5
0
 def test_save_node_with_dict_parameter(self):
   node = Node("node")
   d = {"a": 1, "b": 2, "c": 3}
   node.create_parameter("dict", d)
   node.flatten()
   node.expand()
   node.save()
   retrieved = Node.objects.get(name="node")
   self.assertEqual(retrieved.get_parameter("dict").expanded_value, d)
 def test_macro_cycle3(self):
   n = Node("node")
   n.create_parameter("p1", "${p2}")
   n.create_parameter("p2", "${p3}")
   n.create_parameter("p3", "${p1}")
   n.flatten()
   self.assertRaises(MacroExpansionError, n.expand)
 def test_macro_expanding_to_macro2(self):
   n = Node("node")
   n.create_parameter("p1", "${p2}${p3}")
   n.create_parameter("p2", "${p")
   n.create_parameter("p3", "4}")
   n.create_parameter("p4", "v4")
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p1").expanded_value, n.get_parameter("p4").expanded_value)
示例#8
0
 def test_delete_parameter_base(self):
   n = Node("node")
   p = n.create_parameter("parameter")
   n.delete_parameter("parameter")
   self.assertFalse("parameter" in n.parameters)
示例#9
0
 def test_save_node(self):
   node = Node("node")
   node.save()
   retrieved = Node.objects.get(name="node")
   self.assertEqual(node, retrieved)
 def test_concatenated_macros(self):
   n = Node("node")
   n.create_parameter("p1", "v1")
   n.create_parameter("p2", "v2")
   n.create_parameter("p3", "${p1}${p2}")
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p3").expanded_value,
       n.get_parameter("p1").expanded_value + n.get_parameter("p2").expanded_value)
 def test_undefined_macro2(self):
   n = Node("node")
   n.create_parameter("p1", "${p2}${p2}")
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p1").expanded_value, n.get_parameter("p1").value)
示例#12
0
 def test_create_parameter_twice(self):
   n = Node("node")
   p = n.create_parameter("parameter")
   self.assertRaises(DuplicateError, n.create_parameter, "parameter")
 def test_macro_in_list(self):
   n = Node("node")
   n.create_parameter("p1", "v1")
   n.create_parameter("p2", ["${p1}"])
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p2").expanded_value[0], n.get_parameter("p1").expanded_value)
示例#14
0
 def test_save_node_with_macro_in_list(self):
   node = Node("node")
   l = [1, "b", "${p1}"]
   node.create_parameter("list", l)
   node.create_parameter("p1", 3)
   node.flatten()
   node.expand()
   node.save()
   retrieved = Node.objects.get(name="node")
   self.assertEqual(retrieved.get_parameter("list").expanded_value[2], "3")
 def test_nested_expansion(self):
   n = Node("node")
   n.create_parameter("p1", "v1")
   n.create_parameter("v1", "p1")
   n.create_parameter("p2", "${${v1}}")
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p2").expanded_value, n.get_parameter("p1").expanded_value)
 def test_macro_expansion_nested(self):
   n = Node("node")
   n.create_parameter("p1", "${ab${p2}d}")
   n.create_parameter("p2", "c")
   n.create_parameter("abcd", "v1")
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p1").expanded_value, n.get_parameter("abcd").expanded_value)
 def test_expression(self):
   n = Node("node")
   n.create_parameter("p1", "$((1+1))")
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p1").expanded_value, 2)
 def test_macro_generating_expression(self):
   n = Node("node")
   n.create_parameter("p1", "${p2}")
   n.create_parameter("p2", "$((1+1))")
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p1").expanded_value, n.get_parameter("p2").expanded_value)
 def test_macro_in_dict(self):
   n = Node("node")
   n.create_parameter("p1", "v1")
   n.create_parameter("p2", {"a": "${p1}"})
   n.flatten()
   n.expand()
   self.assertEqual(n.get_parameter("p2").expanded_value["a"], n.get_parameter("p1").expanded_value)
示例#20
0
 def test_create_parameter_base(self):
   n = Node("node")
   p = n.create_parameter("parameter")
   self.assertEqual(p.name, "parameter")
   self.assertTrue(p is n.parameters["parameter"])