Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(17)

Side by Side Diff: tools/sanitizers/sancov_merger_test.py

Issue 2414093003: [tools] Fix merging sancov files from multiple test attempts (Closed)
Patch Set: Created 4 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « tools/sanitizers/sancov_merger.py ('k') | tools/testrunner/local/execution.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 # Copyright 2016 the V8 project authors. All rights reserved. 1 # Copyright 2016 the V8 project authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be 2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file. 3 # found in the LICENSE file.
4 4
5 import unittest 5 import unittest
6 6
7 import sancov_merger 7 import sancov_merger
8 8
9 9
10 # Files on disk after test runner completes. The files are mapped by 10 # Files on disk after test runner completes. The files are mapped by
11 # executable name -> file list. 11 # executable name -> file list.
12 FILE_MAP = { 12 FILE_MAP = {
13 'd8': [ 13 'd8': [
14 'd8.test.1.sancov', 14 'd8.test.1.1.sancov',
15 'd8.test.2.sancov', 15 'd8.test.2.1.sancov',
16 'd8.test.3.sancov', 16 'd8.test.3.1.sancov',
17 'd8.test.4.sancov', 17 'd8.test.4.1.sancov',
18 'd8.test.5.sancov', 18 'd8.test.5.1.sancov',
19 'd8.test.6.sancov', 19 'd8.test.5.2.sancov',
20 'd8.test.7.sancov', 20 'd8.test.6.1.sancov',
21 ], 21 ],
22 'cctest': [ 22 'cctest': [
23 'cctest.test.1.sancov', 23 'cctest.test.1.1.sancov',
24 'cctest.test.2.sancov', 24 'cctest.test.2.1.sancov',
25 'cctest.test.3.sancov', 25 'cctest.test.3.1.sancov',
26 'cctest.test.4.sancov', 26 'cctest.test.4.1.sancov',
27 ], 27 ],
28 } 28 }
29 29
30 30
31 # Inputs for merge process with 2 cpus. The tuples contain: 31 # Inputs for merge process with 2 cpus. The tuples contain:
32 # (flag, path, executable name, intermediate result index, file list). 32 # (flag, path, executable name, intermediate result index, file list).
33 EXPECTED_INPUTS_2 = [ 33 EXPECTED_INPUTS_2 = [
34 (False, '/some/path', 'cctest', 0, [ 34 (False, '/some/path', 'cctest', 0, [
35 'cctest.test.1.sancov', 35 'cctest.test.1.1.sancov',
36 'cctest.test.2.sancov']), 36 'cctest.test.2.1.sancov']),
37 (False, '/some/path', 'cctest', 1, [ 37 (False, '/some/path', 'cctest', 1, [
38 'cctest.test.3.sancov', 38 'cctest.test.3.1.sancov',
39 'cctest.test.4.sancov']), 39 'cctest.test.4.1.sancov']),
40 (False, '/some/path', 'd8', 0, [ 40 (False, '/some/path', 'd8', 0, [
41 'd8.test.1.sancov', 41 'd8.test.1.1.sancov',
42 'd8.test.2.sancov', 42 'd8.test.2.1.sancov',
43 'd8.test.3.sancov', 43 'd8.test.3.1.sancov',
44 'd8.test.4.sancov']), 44 'd8.test.4.1.sancov']),
45 (False, '/some/path', 'd8', 1, [ 45 (False, '/some/path', 'd8', 1, [
46 'd8.test.5.sancov', 46 'd8.test.5.1.sancov',
47 'd8.test.6.sancov', 47 'd8.test.5.2.sancov',
48 'd8.test.7.sancov']), 48 'd8.test.6.1.sancov']),
49 ] 49 ]
50 50
51 51
52 # The same for 4 cpus. 52 # The same for 4 cpus.
53 EXPECTED_INPUTS_4 = [ 53 EXPECTED_INPUTS_4 = [
54 (True, '/some/path', 'cctest', 0, [ 54 (True, '/some/path', 'cctest', 0, [
55 'cctest.test.1.sancov', 55 'cctest.test.1.1.sancov',
56 'cctest.test.2.sancov']), 56 'cctest.test.2.1.sancov']),
57 (True, '/some/path', 'cctest', 1, [ 57 (True, '/some/path', 'cctest', 1, [
58 'cctest.test.3.sancov', 58 'cctest.test.3.1.sancov',
59 'cctest.test.4.sancov']), 59 'cctest.test.4.1.sancov']),
60 (True, '/some/path', 'd8', 0, [ 60 (True, '/some/path', 'd8', 0, [
61 'd8.test.1.sancov', 61 'd8.test.1.1.sancov',
62 'd8.test.2.sancov']), 62 'd8.test.2.1.sancov']),
63 (True, '/some/path', 'd8', 1, [ 63 (True, '/some/path', 'd8', 1, [
64 'd8.test.3.sancov', 64 'd8.test.3.1.sancov',
65 'd8.test.4.sancov']), 65 'd8.test.4.1.sancov']),
66 (True, '/some/path', 'd8', 2, [ 66 (True, '/some/path', 'd8', 2, [
67 'd8.test.5.sancov', 67 'd8.test.5.1.sancov',
68 'd8.test.6.sancov']), 68 'd8.test.5.2.sancov']),
69 (True, '/some/path', 'd8', 3, [ 69 (True, '/some/path', 'd8', 3, [
70 'd8.test.7.sancov'])] 70 'd8.test.6.1.sancov'])]
71 71
72 72
73 class MergerTests(unittest.TestCase): 73 class MergerTests(unittest.TestCase):
74 def test_generate_inputs_2_cpu(self): 74 def test_generate_inputs_2_cpu(self):
75 inputs = sancov_merger.generate_inputs( 75 inputs = sancov_merger.generate_inputs(
76 False, '/some/path', FILE_MAP, 2) 76 False, '/some/path', FILE_MAP, 2)
77 self.assertEquals(EXPECTED_INPUTS_2, inputs) 77 self.assertEquals(EXPECTED_INPUTS_2, inputs)
78 78
79 def test_generate_inputs_4_cpu(self): 79 def test_generate_inputs_4_cpu(self):
80 inputs = sancov_merger.generate_inputs( 80 inputs = sancov_merger.generate_inputs(
81 True, '/some/path', FILE_MAP, 4) 81 True, '/some/path', FILE_MAP, 4)
82 self.assertEquals(EXPECTED_INPUTS_4, inputs) 82 self.assertEquals(EXPECTED_INPUTS_4, inputs)
OLDNEW
« no previous file with comments | « tools/sanitizers/sancov_merger.py ('k') | tools/testrunner/local/execution.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698