X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=test%2Fexecution%2Fec.py;h=ff7a8fa7df095885672edb49157390f78eb7943c;hb=1d2350d56f314a6e3de43517a66f7e2f48128d44;hp=46021483f25bf4665d8c13a116c2eb25af995809;hpb=1df0acb80ba1c737280390c1277a4a751843eac4;p=nepi.git diff --git a/test/execution/ec.py b/test/execution/ec.py index 46021483..ff7a8fa7 100755 --- a/test/execution/ec.py +++ b/test/execution/ec.py @@ -4,9 +4,8 @@ # Copyright (C) 2013 INRIA # # This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. +# it under the terms of the GNU General Public License version 2 as +# published by the Free Software Foundation; # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of @@ -42,7 +41,7 @@ class ExecuteControllersTestCase(unittest.TestCase): time.sleep(1) - self.assertEquals('hola!', task.result) + self.assertEqual('hola!', task.result) ec.shutdown() @@ -72,17 +71,23 @@ class ExecuteControllersTestCase(unittest.TestCase): def test_schedule_exception(self): def raise_error(): - raise RuntimeError, "NOT A REAL ERROR. JUST TESTING!" + # When this task is executed and the error raise, + # the FailureManager should set its failure level to + # TASK_FAILURE + raise RuntimeError("NOT A REAL ERROR. JUST TESTING!") ec = ExperimentController() - ec.schedule("2s", raise_error) - while ec.ecstate not in [ECState.FAILED, ECState.TERMINATED]: - time.sleep(1) + tid = ec.schedule("2s", raise_error, track = True) - self.assertEquals(ec.ecstate, ECState.FAILED) - ec.shutdown() + while True: + task = ec.get_task(tid) + if task.status != TaskStatus.NEW: + break + + time.sleep(1) + self.assertEqual(task.status, TaskStatus.ERROR) if __name__ == '__main__': unittest.main()