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

Side by Side Diff: tools/telemetry/telemetry/core/gpu_info_unittest.py

Issue 21682002: Expose GPU information to Telemetry. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Addressed pfeldman's and nduca's review feedback. Rebased. Retested. Created 7 years, 4 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 | Annotate | Revision Log
OLDNEW
(Empty)
1 # Copyright (c) 2013 The Chromium 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 import unittest
5
6 from telemetry.core import gpu_info
7 from telemetry.core import gpu_device
8
9 class TestGPUInfo(unittest.TestCase):
10 def testConstruction(self):
11 data = {
12 'optimus': False,
13 'amd_switchable': False,
14 'lenovo_dcute': False,
15 'gpu': { 'vendor_id': 1000, 'device_id': 2000,
16 'vendor_string': 'a', 'device_string': 'b' },
17 'driver_vendor': 'c',
18 'driver_version': 'd',
19 'driver_date': 'e',
20 'machine_model': 'f',
21 'gl_version_string': 'g',
22 'gl_vendor': 'h',
23 'gl_renderer': 'i',
24 'gl_extensions': 'j',
25 'secondary_gpus': [
26 { 'vendor_id': 3000, 'device_id': 4000,
27 'vendor_string': 'k', 'device_string': 'l' },
28 { 'vendor_id': 5000, 'device_id': 6000,
29 'vendor_string': 'm', 'device_string': 'n' }]
30 }
31 info = gpu_info.GPUInfo(data)
32 self.assertTrue(isinstance(info.gpu, gpu_device.GPUDevice))
33 self.assertEquals(info.gpu.vendor_id, 1000)
34 self.assertEquals(info.gpu.device_id, 2000)
35 self.assertEquals(info.gpu.vendor_string, 'a')
36 self.assertEquals(info.gpu.device_string, 'b')
37 self.assertEquals(len(info.secondary_gpus), 2)
38 self.assertTrue(isinstance(info.secondary_gpus[0], gpu_device.GPUDevice))
39 self.assertEquals(info.secondary_gpus[0].vendor_id, 3000)
40 self.assertEquals(info.secondary_gpus[0].device_id, 4000)
41 self.assertEquals(info.secondary_gpus[0].vendor_string, 'k')
42 self.assertEquals(info.secondary_gpus[0].device_string, 'l')
43 self.assertTrue(isinstance(info.secondary_gpus[1], gpu_device.GPUDevice))
44 self.assertEquals(info.secondary_gpus[1].vendor_id, 5000)
45 self.assertEquals(info.secondary_gpus[1].device_id, 6000)
46 self.assertEquals(info.secondary_gpus[1].vendor_string, 'm')
47 self.assertEquals(info.secondary_gpus[1].device_string, 'n')
48 self.assertEquals(info.machine_model, 'f')
49 self.assertEquals(info.optional_attributes['optimus'], False)
50 self.assertEquals(info.optional_attributes['amd_switchable'], False)
51 self.assertEquals(info.optional_attributes['lenovo_dcute'], False)
52 self.assertEquals(info.optional_attributes['driver_vendor'], 'c')
53 self.assertEquals(info.optional_attributes['driver_version'], 'd')
54 self.assertEquals(info.optional_attributes['driver_date'], 'e')
55 self.assertEquals(info.optional_attributes['gl_version_string'], 'g')
56 self.assertEquals(info.optional_attributes['gl_vendor'], 'h')
57 self.assertEquals(info.optional_attributes['gl_renderer'], 'i')
58 self.assertEquals(info.optional_attributes['gl_extensions'], 'j')
59
60 def testMissingAttrsFromDict(self):
61 data = {
62 'gpu': { 'vendor_id': 1000, 'device_id': 2000,
63 'vendor_string': 'a', 'device_string': 'b' },
64 }
65
66 for k in data:
67 data_copy = data.copy()
68 del data_copy[k]
69 try:
70 gpu_info.GPUInfo.FromDict(data_copy)
71 self.fail('Should raise exception if attribute "%s" is missing' % k)
72 except AssertionError:
73 raise
74 except:
75 pass
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698