2 # -*- coding: utf-8 -*-
4 from nepi.core.design import ExperimentDescription, FactoriesProvider
11 class NetnsDesignTestCase(unittest.TestCase):
12 def test_design_if(self):
13 exp_desc = ExperimentDescription()
14 testbed_version = "01"
16 provider = FactoriesProvider(testbed_id, testbed_version)
17 tstbd_desc = exp_desc.add_testbed_description(provider)
18 tstbd_desc.set_attribute_value("enableDebug", True)
19 node1 = tstbd_desc.create("Node")
20 node2 = tstbd_desc.create("Node")
21 iface1 = tstbd_desc.create("NodeInterface")
22 iface1.set_attribute_value("up", True)
23 node1.connector("devs").connect(iface1.connector("node"))
24 ip1 = iface1.add_address()
25 ip1.set_attribute_value("Address", "10.0.0.1")
26 iface2 = tstbd_desc.create("NodeInterface")
27 iface2.set_attribute_value("up", True)
28 node2.connector("devs").connect(iface2.connector("node"))
29 ip2 = iface2.add_address()
30 ip2.set_attribute_value("Address", "10.0.0.2")
31 switch = tstbd_desc.create("Switch")
32 switch.set_attribute_value("up", True)
33 iface1.connector("switch").connect(switch.connector("devs"))
34 iface2.connector("switch").connect(switch.connector("devs"))
35 app = tstbd_desc.create("Application")
36 app.set_attribute_value("command", "ping -qc10 10.0.0.2")
37 app.connector("node").connect(node1.connector("apps"))
38 xml = exp_desc.to_xml()
39 exp_desc2 = ExperimentDescription()
40 exp_desc2.from_xml(xml)
41 xml2 = exp_desc2.to_xml()
42 self.assertTrue(xml == xml2)
44 if __name__ == '__main__':