DeviceQueue: changed tests
[barrelfish] / tools / harness / tests / devif_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 re, datetime
11 import debug, tests
12 from common import TestCommon, TimeoutError
13 from results import RowResults, PassFailResult
14
15 TEST_TIMEOUT = datetime.timedelta(minutes=8)
16
17
18 class DevifTests(TestCommon):
19
20     def __init__(self, options):
21         super(DevifTests, self).__init__(options)
22
23     def get_module_name(self):
24         return "devif_test"
25
26     def boot(self, *args):
27         super(DevifTests, self).boot(*args)
28         self.set_timeout(TEST_TIMEOUT)
29
30     def get_modules(self, build, machine):
31         self.machine = machine.name
32         modules = super(DevifTests, self).get_modules(build, machine)
33         modules.add_module("sfn5122f", ["auto", "function=0"])
34         modules.add_module("devif_idc", ["core=1"])
35         modules.add_module(self.get_module_name(), ["core=0", self.OP])
36
37         return modules
38
39     def is_finished(self, line):
40         return line.startswith("SUCCESS")
41
42     def process_data(self, testdir, rawiter):
43         passed = False
44         for line in rawiter:
45             if "SUCCESS" in line:
46                 passed = True
47         return PassFailResult(passed)
48
49 @tests.add_test
50 class DevifNetTxTest(DevifTests):
51     ''' Devif Net TX Test'''
52     name = "devif_net_tx_test"
53     OP = "net_tx"
54
55 @tests.add_test
56 class DevifNetRxTest(DevifTests):
57     ''' Devif Net RX Test'''
58     name = "devif_net_rx_test"
59     OP = "net_rx"
60
61 @tests.add_test
62 class DevifIdcTest(DevifTests):
63     ''' Devif IDC Test'''
64     name = "devif_idc_test"
65     OP = "idc"