xref: /aosp_15_r20/external/autotest/client/site_tests/graphics_Chrome/graphics_Chrome.py (revision 9c5db1993ded3edbeafc8092d69fe5de2ee02df7)
1# Lint as: python2, python3
2# Copyright 2018 The Chromium Authors. All rights reserved.
3# Use of this source code is governed by a BSD-style license that can be
4# found in the LICENSE file.
5
6import logging
7
8from autotest_lib.client.common_lib import error
9from autotest_lib.client.cros import chrome_binary_test
10from autotest_lib.client.cros.graphics import graphics_utils
11
12
13class graphics_Chrome(graphics_utils.GraphicsTest,
14                      chrome_binary_test.ChromeBinaryTest):
15    """Runs a given Chrome unittests binary."""
16    version = 1
17
18    @chrome_binary_test.nuke_chrome
19    @graphics_utils.GraphicsTest.failure_report_decorator('graphics_Chrome')
20    def run_once(self, unittests_binary_name, unittests_timeout):
21        logging.debug('Starting %s', unittests_binary_name)
22        try:
23            self.run_chrome_test_binary(
24                unittests_binary_name, timeout=unittests_timeout)
25        except error.CmdTimeoutError:
26            raise error.TestFail(
27                'Failed: timeout running %s' % unittests_binary_name)
28        except:
29            # TODO(ihf): Consider parsing the output from the test.
30            raise error.TestFail('Failed: %s' % unittests_binary_name)
31