OLD | NEW |
---|---|
(Empty) | |
1 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | |
2 # Use of this source code is governed by a BSD-style license that can be | |
3 # found in the LICENSE file. | |
4 | |
5 import logging, os | |
6 | |
7 from autotest_lib.client.bin import test | |
8 from autotest_lib.client.common_lib import utils | |
9 | |
10 class unit_test(test.test): | |
11 """ | |
12 Unit test should simply subclass this test which handles everything. | |
13 """ | |
14 version = 1 | |
15 preserve_srcdir = True | |
16 | |
17 | |
18 def setup(self): | |
19 os.chdir(self.srcdir) | |
20 utils.system('make clean') | |
21 utils.system('make all') | |
22 | |
23 self.job.setup_dep(['gtest']) | |
24 | |
25 def run_once(self): | |
26 dep ='gtest' | |
27 dep_dir = os.path.join(self.autodir, 'deps', dep) | |
28 self.job.install_pkg(dep, 'dep', dep_dir) | |
29 | |
30 # Run the unit test, gather the results and place the gcda files for | |
31 # code coverage in the results directory. | |
32 | |
33 os.chdir(self.srcdir) | |
34 result = utils.run('LD_LIBRARY_PATH=' + dep_dir + | |
35 ' GCOV_PREFIX=' + self.resultsdir + | |
36 ' GCOV_PREFIX_STRIP=9999 ./unit_test > ' + | |
37 self.resultsdir + '/unit_test_result.txt') | |
38 logging.debug(result.stderr) | |
petkov
2010/04/09 21:13:31
Shouldn't you be processing the generated result f
Sean Parent
2010/04/10 02:46:07
If one of the unit tests fails then the command wi
| |
39 logging.info('result: ' + self.resultsdir + '/unit_test_result.txt') | |
petkov
2010/04/09 21:13:31
Now this is something you could write as a test_ke
Sean Parent
2010/04/10 02:46:07
Since this is client side - I didn't think it woul
| |
40 | |
41 def cleanup(self): | |
42 # This is a hack - we should only need to copy back the .gcda file but | |
43 # we don't know how to access the source on the server. So copy | |
44 # everything back. | |
45 | |
46 os.chdir(self.srcdir) | |
47 utils.run('cp * ' + self.resultsdir) | |
OLD | NEW |