Tidy up the process management test.
[barrelfish] / tools / harness / tests / proc_mgmt_test.py
1 ##########################################################################
2 # Copyright (c) 2017, ETH Zurich.
3 # All rights reserved.
4 #
5 # This file is distributed under the terms in the attached LICENSE file.
6 # If you do not find this file, copies can be found by writing to:
7 # ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
8 ##########################################################################
9
10 import datetime
11 import tests
12 from common import TestCommon
13 from results import PassFailResult
14
15 @tests.add_test
16 class ProcMgmtTest(TestCommon):
17     '''Process management service API. Requires at least 2 cores.'''
18     name = "proc_mgmt_test"
19
20     def setup(self, build, machine, testdir):
21         super(ProcMgmtTest, self).setup(build, machine, testdir)
22         self.test_timeout_delta = datetime.timedelta(seconds=15*60)
23
24     def get_modules(self, build, machine):
25         modules = super(ProcMgmtTest, self).get_modules(build, machine)
26         n = 1
27         for i in range(n):
28             modules.add_module("proc_mgmt_test", ["core=3", str(i), str(n)])
29             # modules.add_module("proc_mgmt_test", ["core=3", "1"])
30         return modules
31
32     def get_finish_string(self):
33         return "TEST DONE"
34
35     def process_data(self, testdir, rawiter):
36         for line in rawiter:
37             if line.startswith("FAIL:"):
38                 return PassFailResult(False)
39
40         return PassFailResult(True)