3 # NEPI, a framework to manage network experiments
4 # Copyright (C) 2013 INRIA
6 # This program is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 # GNU General Public License for more details.
16 # You should have received a copy of the GNU General Public License
17 # along with this program. If not, see <http://www.gnu.org/licenses/>.
19 # Author: Julien Tribino <julien.tribino@inria.fr>
22 from nepi.execution.resource import ResourceFactory, ResourceManager, \
23 ResourceAction, ResourceState
24 from nepi.execution.ec import ExperimentController
26 from nepi.resources.omf.node import OMFNode
27 from nepi.resources.omf.application import OMFApplication
28 from nepi.resources.omf.interface import OMFWifiInterface
29 from nepi.resources.omf.channel import OMFChannel
30 from nepi.resources.omf.omf_api_factory import OMFAPIFactory
32 from nepi.util.timefuncs import *
37 class OMFVLCWrongCaseWithNonCritical(unittest.TestCase):
42 self.ec = ExperimentController(exp_id = str(OMFVLCWrongCaseWithNonCritical.id))
43 OMFVLCWrongCaseWithNonCritical.id += 1
45 self.node1 = self.ec.register_resource("omf::Node")
46 self.ec.set(self.node1, 'hostname', 'wlab12')
47 self.ec.set(self.node1, 'xmppUser', "nepi")
48 self.ec.set(self.node1, 'xmppServer', "xmpp-plexus.onelab.eu")
49 self.ec.set(self.node1, 'xmppPort', "5222")
50 self.ec.set(self.node1, 'xmppPassword', "1234")
52 self.iface1 = self.ec.register_resource("omf::WifiInterface")
53 self.ec.set(self.iface1, 'name', "wlan0")
54 self.ec.set(self.iface1, 'mode', "adhoc")
55 self.ec.set(self.iface1, 'hw_mode', "g")
56 self.ec.set(self.iface1, 'essid', "vlcexp")
57 self.ec.set(self.iface1, 'ip', "10.0.0.12/24")
59 self.app1 = self.ec.register_resource("omf::Application")
60 self.ec.set(self.app1, 'appid', 'Kill#1')
61 self.ec.set(self.app1, 'command', "/usr/bin/test -1")
62 self.ec.set(self.app1, 'env', "DISPLAY=localhost:10.0 XAUTHORITY=/root/.Xauthority")
64 self.ec.register_connection(self.app1, self.node1)
65 self.ec.register_connection(self.node1, self.iface1)
67 def test_deploy_with_node_nc(self):
68 self.node2 = self.ec.register_resource("omf::Node")
69 self.ec.set(self.node2, "critical", False)
71 self.iface2 = self.ec.register_resource("omf::WifiInterface")
72 self.ec.set(self.iface2, 'name', "wlan0")
73 self.ec.set(self.iface2, 'mode', "adhoc")
74 self.ec.set(self.iface2, 'hw_mode', "g")
75 self.ec.set(self.iface2, 'essid', "vlcexp")
76 self.ec.set(self.iface2, 'ip', "10.0.0.49/24")
78 self.channel = self.ec.register_resource("omf::Channel")
79 self.ec.set(self.channel, 'channel', "6")
81 self.ec.register_connection(self.iface1, self.channel)
82 self.ec.register_connection(self.node2, self.iface2)
83 self.ec.register_connection(self.iface2, self.channel)
85 self.ec.register_condition([self.app1], ResourceAction.STOP, self.app1, ResourceState.STARTED , "5s")
89 self.ec.wait_finished([self.app1])
91 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.FAILED)
92 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.FAILED)
96 self.assertEquals(self.ec.get_resource(self.node1).state, ResourceState.RELEASED)
97 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.RELEASED)
98 self.assertEquals(self.ec.get_resource(self.iface1).state, ResourceState.RELEASED)
99 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.RELEASED)
100 self.assertEquals(self.ec.get_resource(self.channel).state, ResourceState.RELEASED)
101 self.assertEquals(self.ec.get_resource(self.app1).state, ResourceState.RELEASED)
103 def test_deploy_with_node_and_iface_nc(self):
104 self.node2 = self.ec.register_resource("omf::Node")
105 self.ec.set(self.node2, "critical", False)
107 self.iface2 = self.ec.register_resource("omf::WifiInterface")
108 self.ec.set(self.node2, "critical", False)
109 self.ec.set(self.iface2, 'name', "wlan0")
110 self.ec.set(self.iface2, 'mode', "adhoc")
111 self.ec.set(self.iface2, 'hw_mode', "g")
112 self.ec.set(self.iface2, 'essid', "vlcexp")
113 self.ec.set(self.iface2, 'ip', "10.0.0.49/24")
115 self.channel = self.ec.register_resource("omf::Channel")
116 self.ec.set(self.channel, 'channel', "6")
118 self.ec.register_connection(self.iface1, self.channel)
119 self.ec.register_connection(self.node2, self.iface2)
120 self.ec.register_connection(self.iface2, self.channel)
122 self.ec.register_condition([self.app1], ResourceAction.STOP, self.app1, ResourceState.STARTED , "5s")
126 self.ec.wait_finished([self.app1])
128 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.FAILED)
129 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.FAILED)
133 self.assertEquals(self.ec.get_resource(self.node1).state, ResourceState.RELEASED)
134 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.RELEASED)
135 self.assertEquals(self.ec.get_resource(self.iface1).state, ResourceState.RELEASED)
136 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.RELEASED)
137 self.assertEquals(self.ec.get_resource(self.channel).state, ResourceState.RELEASED)
138 self.assertEquals(self.ec.get_resource(self.app1).state, ResourceState.RELEASED)
140 def test_deploy_with_node_iface_channel_nc(self):
141 self.node2 = self.ec.register_resource("omf::Node")
142 self.ec.set(self.node2, "critical", False)
143 self.ec.set(self.node2, 'hostname', 'wlab49')
145 self.iface2 = self.ec.register_resource("omf::WifiInterface")
146 self.ec.set(self.node2, "critical", False)
147 self.ec.set(self.iface2, 'name', "wlan0")
148 self.ec.set(self.iface2, 'mode', "adhoc")
149 self.ec.set(self.iface2, 'hw_mode', "g")
150 self.ec.set(self.iface2, 'essid', "vlcexp")
151 self.ec.set(self.iface2, 'ip', "10.0.0.49/24")
153 self.channel = self.ec.register_resource("omf::Channel")
154 self.ec.set(self.channel, 'channel', "6")
155 self.ec.set(self.channel, "critical", False)
157 self.ec.register_connection(self.iface1, self.channel)
158 self.ec.register_connection(self.node2, self.iface2)
159 self.ec.register_connection(self.iface2, self.channel)
161 self.ec.register_condition([self.app1], ResourceAction.STOP, self.app1, ResourceState.STARTED , "10s")
165 self.ec.wait_finished([self.app1])
167 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.FAILED)
168 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.FAILED)
172 self.assertEquals(self.ec.get_resource(self.node1).state, ResourceState.RELEASED)
173 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.RELEASED)
174 self.assertEquals(self.ec.get_resource(self.iface1).state, ResourceState.RELEASED)
175 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.RELEASED)
176 self.assertEquals(self.ec.get_resource(self.channel).state, ResourceState.RELEASED)
177 self.assertEquals(self.ec.get_resource(self.app1).state, ResourceState.RELEASED)
179 def test_deploy_with_app_nc(self):
180 self.node2 = self.ec.register_resource("omf::Node")
181 self.ec.set(self.node2, 'hostname', 'wlab49')
182 self.ec.set(self.node2, 'xmppUser', "nepi")
183 self.ec.set(self.node2, 'xmppServer', "xmpp-plexus.onelab.eu")
184 self.ec.set(self.node2, 'xmppPort', "5222")
185 self.ec.set(self.node2, 'xmppPassword', "1234")
187 self.iface2 = self.ec.register_resource("omf::WifiInterface")
188 self.ec.set(self.iface2, 'name', "wlan0")
189 self.ec.set(self.iface2, 'mode', "adhoc")
190 self.ec.set(self.iface2, 'hw_mode', "g")
191 self.ec.set(self.iface2, 'essid', "vlcexp")
192 self.ec.set(self.iface2, 'ip', "10.0.0.49/24")
194 self.channel = self.ec.register_resource("omf::Channel")
195 self.ec.set(self.channel, 'channel', "6")
197 self.app2 = self.ec.register_resource("omf::Application")
198 self.ec.set(self.app2, "critical", False)
199 self.ec.set(self.app2, 'appid', 'Kill#22')
201 self.ec.register_connection(self.iface1, self.channel)
202 self.ec.register_connection(self.node2, self.iface2)
203 self.ec.register_connection(self.iface2, self.channel)
204 self.ec.register_connection(self.app2, self.node2)
206 self.ec.register_condition(self.app2, ResourceAction.START, self.app1, ResourceState.STARTED , "6s")
207 self.ec.register_condition([self.app1, self.app2], ResourceAction.STOP, self.app1, ResourceState.STARTED , "10s")
211 self.ec.wait_finished([self.app1, self.app2])
213 self.assertEquals(self.ec.get_resource(self.app1).state, ResourceState.STOPPED)
214 self.assertEquals(self.ec.get_resource(self.app2).state, ResourceState.FAILED)
218 self.assertEquals(self.ec.get_resource(self.node1).state, ResourceState.RELEASED)
219 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.RELEASED)
220 self.assertEquals(self.ec.get_resource(self.iface1).state, ResourceState.RELEASED)
221 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.RELEASED)
222 self.assertEquals(self.ec.get_resource(self.channel).state, ResourceState.RELEASED)
223 self.assertEquals(self.ec.get_resource(self.app1).state, ResourceState.RELEASED)
224 self.assertEquals(self.ec.get_resource(self.app2).state, ResourceState.RELEASED)
226 def test_deploy_with_all_nc_and_app_critical(self):
227 self.node2 = self.ec.register_resource("omf::Node")
228 self.ec.set(self.node2, "critical", False)
229 self.ec.set(self.node2, 'hostname', 'wlab49')
231 self.iface2 = self.ec.register_resource("omf::WifiInterface")
232 self.ec.set(self.iface2, "critical", False)
234 self.channel = self.ec.register_resource("omf::Channel")
235 self.ec.set(self.channel, "critical", False)
236 self.ec.set(self.channel, 'channel', "6")
238 self.app2 = self.ec.register_resource("omf::Application")
239 self.ec.set(self.app2, 'appid', 'Kill#22')
241 self.ec.register_connection(self.iface1, self.channel)
242 self.ec.register_connection(self.node2, self.iface2)
243 self.ec.register_connection(self.iface2, self.channel)
244 self.ec.register_connection(self.app2, self.node2)
246 self.ec.register_condition(self.app2, ResourceAction.START, self.app1, ResourceState.STARTED , "6s")
247 self.ec.register_condition([self.app1, self.app2], ResourceAction.STOP, self.app1, ResourceState.STARTED , "10s")
251 self.ec.wait_finished([self.app1, self.app2])
253 self.assertEquals(self.ec.get_resource(self.app2).state, ResourceState.FAILED)
257 self.assertEquals(self.ec.get_resource(self.node1).state, ResourceState.RELEASED)
258 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.RELEASED)
259 self.assertEquals(self.ec.get_resource(self.iface1).state, ResourceState.RELEASED)
260 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.RELEASED)
261 self.assertEquals(self.ec.get_resource(self.channel).state, ResourceState.RELEASED)
262 self.assertEquals(self.ec.get_resource(self.app1).state, ResourceState.RELEASED)
263 self.assertEquals(self.ec.get_resource(self.app2).state, ResourceState.RELEASED)
266 class OMFVLCWrongCaseWithNonCriticalDep(unittest.TestCase):
271 self.ec = ExperimentController(exp_id = str(OMFVLCWrongCaseWithNonCriticalDep.id))
272 OMFVLCWrongCaseWithNonCriticalDep.id += 1
274 self.node1 = self.ec.register_resource("omf::Node")
275 self.ec.set(self.node1, 'hostname', 'wlab12')
276 self.ec.set(self.node1, 'xmppUser', "nepi")
277 self.ec.set(self.node1, 'xmppServer', "xmpp-plexus.onelab.eu")
278 self.ec.set(self.node1, 'xmppPort', "5222")
279 self.ec.set(self.node1, 'xmppPassword', "1234")
281 self.iface1 = self.ec.register_resource("omf::WifiInterface")
282 self.ec.set(self.iface1, 'name', "wlan0")
283 self.ec.set(self.iface1, 'mode', "adhoc")
284 self.ec.set(self.iface1, 'hw_mode', "g")
285 self.ec.set(self.iface1, 'essid', "vlcexp")
286 self.ec.set(self.iface1, 'ip', "10.0.0.12/24")
288 self.app1 = self.ec.register_resource("omf::Application")
289 self.ec.set(self.app1, 'appid', 'Kill#1')
290 self.ec.set(self.app1, 'command', "/usr/bin/test -1")
291 self.ec.set(self.app1, 'env', "DISPLAY=localhost:10.0 XAUTHORITY=/root/.Xauthority")
293 self.ec.register_connection(self.app1, self.node1)
294 self.ec.register_connection(self.node1, self.iface1)
296 def test_deploy_with_app_nc_and_critical_wrong(self):
297 self.node2 = self.ec.register_resource("omf::Node")
298 self.ec.set(self.node2, 'hostname', 'wlab49')
299 self.ec.set(self.node2, 'xmppUser', "nepi")
300 self.ec.set(self.node2, 'xmppServer', "xmpp-plexus.onelab.eu")
301 self.ec.set(self.node2, 'xmppPort', "5222")
302 self.ec.set(self.node2, 'xmppPassword', "1234")
304 self.iface2 = self.ec.register_resource("omf::WifiInterface")
305 self.ec.set(self.iface2, 'name', "wlan0")
306 self.ec.set(self.iface2, 'mode', "adhoc")
307 self.ec.set(self.iface2, 'hw_mode', "g")
308 self.ec.set(self.iface2, 'essid', "vlcexp")
309 self.ec.set(self.iface2, 'ip', "10.0.0.49/24")
311 self.channel = self.ec.register_resource("omf::Channel")
312 self.ec.set(self.channel, 'channel', "6")
314 self.app2 = self.ec.register_resource("omf::Application")
315 self.ec.set(self.app2, "critical", False)
316 self.ec.set(self.app2, 'appid', 'Kill#32')
318 self.app3 = self.ec.register_resource("omf::Application")
319 self.ec.set(self.app3, 'appid', 'Kill#33')
321 self.ec.register_connection(self.iface1, self.channel)
322 self.ec.register_connection(self.node2, self.iface2)
323 self.ec.register_connection(self.iface2, self.channel)
324 self.ec.register_connection(self.app2, self.node2)
325 self.ec.register_connection(self.app3, self.node2)
327 self.ec.register_condition(self.app2, ResourceAction.START, self.app1, ResourceState.STARTED , "5s")
328 self.ec.register_condition(self.app3, ResourceAction.START, self.app2, ResourceState.STARTED , "5s")
329 self.ec.register_condition([self.app1, self.app2, self.app3], ResourceAction.STOP, self.app1, ResourceState.STARTED , "15s")
333 self.ec.wait_finished([self.app1, self.app2, self.app3])
335 self.assertEquals(self.ec.get_resource(self.app2).state, ResourceState.FAILED)
336 self.assertEquals(self.ec.get_resource(self.app3).state, ResourceState.FAILED)
340 self.assertEquals(self.ec.get_resource(self.node1).state, ResourceState.RELEASED)
341 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.RELEASED)
342 self.assertEquals(self.ec.get_resource(self.iface1).state, ResourceState.RELEASED)
343 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.RELEASED)
344 self.assertEquals(self.ec.get_resource(self.channel).state, ResourceState.RELEASED)
345 self.assertEquals(self.ec.get_resource(self.app1).state, ResourceState.RELEASED)
346 self.assertEquals(self.ec.get_resource(self.app2).state, ResourceState.RELEASED)
347 self.assertEquals(self.ec.get_resource(self.app3).state, ResourceState.RELEASED)
349 def test_deploy_with_app_nc_and_critical_right(self):
350 self.node2 = self.ec.register_resource("omf::Node")
351 self.ec.set(self.node2, 'hostname', 'wlab49')
352 self.ec.set(self.node2, 'xmppUser', "nepi")
353 self.ec.set(self.node2, 'xmppServer', "xmpp-plexus.onelab.eu")
354 self.ec.set(self.node2, 'xmppPort', "5222")
355 self.ec.set(self.node2, 'xmppPassword', "1234")
357 self.iface2 = self.ec.register_resource("omf::WifiInterface")
358 self.ec.set(self.iface2, 'name', "wlan0")
359 self.ec.set(self.iface2, 'mode', "adhoc")
360 self.ec.set(self.iface2, 'hw_mode', "g")
361 self.ec.set(self.iface2, 'essid', "vlcexp")
362 self.ec.set(self.iface2, 'ip', "10.0.0.49/24")
364 self.channel = self.ec.register_resource("omf::Channel")
365 self.ec.set(self.channel, 'channel', "6")
367 self.app2 = self.ec.register_resource("omf::Application")
368 self.ec.set(self.app2, "critical", False)
369 self.ec.set(self.app2, 'appid', 'Kill#32')
371 self.app3 = self.ec.register_resource("omf::Application")
372 self.ec.set(self.app3, 'appid', 'Kill#3')
373 self.ec.set(self.app3, 'command', "/usr/bin/test -3")
374 self.ec.set(self.app3, 'env', "DISPLAY=localhost:10.0 XAUTHORITY=/root/.Xauthority")
376 self.ec.register_connection(self.iface1, self.channel)
377 self.ec.register_connection(self.node2, self.iface2)
378 self.ec.register_connection(self.iface2, self.channel)
379 self.ec.register_connection(self.app2, self.node2)
380 self.ec.register_connection(self.app3, self.node2)
382 self.ec.register_condition(self.app2, ResourceAction.START, self.app1, ResourceState.STARTED , "5s")
383 self.ec.register_condition(self.app3, ResourceAction.START, self.app2, ResourceState.STARTED , "5s")
384 self.ec.register_condition([self.app1, self.app2, self.app3], ResourceAction.STOP, self.app1, ResourceState.STARTED , "15s")
388 self.ec.wait_finished([self.app1, self.app2, self.app3])
390 self.assertEquals(self.ec.get_resource(self.app2).state, ResourceState.FAILED)
391 #self.assertEquals(self.ec.get_resource(self.app3).state, ResourceState.STOPPED)
395 self.assertEquals(self.ec.get_resource(self.node1).state, ResourceState.RELEASED)
396 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.RELEASED)
397 self.assertEquals(self.ec.get_resource(self.iface1).state, ResourceState.RELEASED)
398 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.RELEASED)
399 self.assertEquals(self.ec.get_resource(self.channel).state, ResourceState.RELEASED)
400 self.assertEquals(self.ec.get_resource(self.app1).state, ResourceState.RELEASED)
401 self.assertEquals(self.ec.get_resource(self.app2).state, ResourceState.RELEASED)
402 self.assertEquals(self.ec.get_resource(self.app3).state, ResourceState.RELEASED)
405 def test_deploy_with_many_app_nc_and_critical(self):
406 self.node2 = self.ec.register_resource("omf::Node")
407 self.ec.set(self.node2, 'hostname', 'wlab49')
408 self.ec.set(self.node2, 'xmppUser', "nepi")
409 self.ec.set(self.node2, 'xmppServer', "xmpp-plexus.onelab.eu")
410 self.ec.set(self.node2, 'xmppPort', "5222")
411 self.ec.set(self.node2, 'xmppPassword', "1234")
413 self.iface2 = self.ec.register_resource("omf::WifiInterface")
414 self.ec.set(self.iface2, 'name', "wlan0")
415 self.ec.set(self.iface2, 'mode', "adhoc")
416 self.ec.set(self.iface2, 'hw_mode', "g")
417 self.ec.set(self.iface2, 'essid', "vlcexp")
418 self.ec.set(self.iface2, 'ip', "10.0.0.49/24")
420 self.channel = self.ec.register_resource("omf::Channel")
421 self.ec.set(self.channel, 'channel', "6")
423 self.app2 = self.ec.register_resource("omf::Application")
424 self.ec.set(self.app2, "critical", False)
425 self.ec.set(self.app2, 'appid', 'Kill#32')
427 self.app3 = self.ec.register_resource("omf::Application")
428 self.ec.set(self.app3, "critical", False)
429 self.ec.set(self.app3, 'appid', 'Kill#3')
430 self.ec.set(self.app3, 'command', "/usr/bin/test -3")
431 self.ec.set(self.app3, 'env', "DISPLAY=localhost:10.0 XAUTHORITY=/root/.Xauthority")
433 self.app4 = self.ec.register_resource("omf::Application")
434 self.ec.set(self.app4, 'appid', 'Kill#4')
435 self.ec.set(self.app4, 'command', "/usr/bin/test -4")
436 self.ec.set(self.app4, 'env', "DISPLAY=localhost:10.0 XAUTHORITY=/root/.Xauthority")
438 self.app5 = self.ec.register_resource("omf::Application")
439 self.ec.set(self.app5, "critical", False)
440 self.ec.set(self.app5, 'appid', 'Kill#32')
442 self.app6 = self.ec.register_resource("omf::Application")
443 self.ec.set(self.app6, 'appid', 'Kill#6')
444 self.ec.set(self.app6, 'command', "/usr/bin/test -6")
445 self.ec.set(self.app6, 'env', "DISPLAY=localhost:10.0 XAUTHORITY=/root/.Xauthority")
447 self.ec.register_connection(self.iface1, self.channel)
448 self.ec.register_connection(self.node2, self.iface2)
449 self.ec.register_connection(self.iface2, self.channel)
450 self.ec.register_connection(self.app2, self.node1)
451 self.ec.register_connection(self.app3, self.node1)
452 self.ec.register_connection(self.app4, self.node2)
453 self.ec.register_connection(self.app5, self.node2)
454 self.ec.register_connection(self.app6, self.node2)
456 self.ec.register_condition(self.app2, ResourceAction.START, self.app1, ResourceState.STARTED , "4s")
457 self.ec.register_condition(self.app3, ResourceAction.START, self.app2, ResourceState.STARTED , "4s")
458 self.ec.register_condition(self.app4, ResourceAction.START, self.app1, ResourceState.STARTED , "4s")
459 self.ec.register_condition(self.app5, ResourceAction.START, self.app4, ResourceState.STARTED , "4s")
460 self.ec.register_condition(self.app6, ResourceAction.START, self.app5, ResourceState.STARTED , "4s")
461 self.ec.register_condition([self.app1, self.app2, self.app3, self.app4, self.app5, self.app6 ], ResourceAction.STOP, [self.app1, self.app2, self.app3, self.app4, self.app5, self.app6 ], ResourceState.STARTED , "5s")
465 self.ec.wait_finished([self.app1, self.app2, self.app3, self.app4, self.app5, self.app6])
467 #self.assertEquals(self.ec.get_resource(self.app3).state, ResourceState.STOPPED)
468 self.assertEquals(self.ec.get_resource(self.app2).state, ResourceState.FAILED)
469 #self.assertEquals(self.ec.get_resource(self.app4).state, ResourceState.STOPPED)
470 self.assertEquals(self.ec.get_resource(self.app5).state, ResourceState.FAILED)
471 #self.assertEquals(self.ec.get_resource(self.app6).state, ResourceState.STOPPED)
475 self.assertEquals(self.ec.get_resource(self.node1).state, ResourceState.RELEASED)
476 self.assertEquals(self.ec.get_resource(self.node2).state, ResourceState.RELEASED)
477 self.assertEquals(self.ec.get_resource(self.iface1).state, ResourceState.RELEASED)
478 self.assertEquals(self.ec.get_resource(self.iface2).state, ResourceState.RELEASED)
479 self.assertEquals(self.ec.get_resource(self.channel).state, ResourceState.RELEASED)
480 self.assertEquals(self.ec.get_resource(self.app1).state, ResourceState.RELEASED)
481 self.assertEquals(self.ec.get_resource(self.app2).state, ResourceState.RELEASED)
482 self.assertEquals(self.ec.get_resource(self.app3).state, ResourceState.RELEASED)
483 self.assertEquals(self.ec.get_resource(self.app4).state, ResourceState.RELEASED)
484 self.assertEquals(self.ec.get_resource(self.app5).state, ResourceState.RELEASED)
485 self.assertEquals(self.ec.get_resource(self.app6).state, ResourceState.RELEASED)
488 if __name__ == '__main__':