Home | History | Annotate | Download | only in video_JpegEncodeAccelerator
      1 # Copyright 2018 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 
      5 """A test which verifies the function of hardware JPEG encode accelerator."""
      6 
      7 import logging
      8 import os
      9 from autotest_lib.client.common_lib import file_utils
     10 from autotest_lib.client.cros import chrome_binary_test
     11 from autotest_lib.client.cros.video import helper_logger
     12 
     13 DOWNLOAD_BASE = 'http://commondatastorage.googleapis.com/chromiumos-test-assets-public/'
     14 TEST_IMAGE_PATH = 'jpeg_test/bali_640x360_P420.yuv'
     15 
     16 class video_JpegEncodeAccelerator(chrome_binary_test.ChromeBinaryTest):
     17     """
     18     This test is a wrapper of the chrome unittest binary:
     19     jpeg_encode_accelerator_unittest.
     20     """
     21 
     22     version = 1
     23     binary = 'jpeg_encode_accelerator_unittest'
     24 
     25     @helper_logger.video_log_wrapper
     26     @chrome_binary_test.nuke_chrome
     27     def run_once(self, gtest_filter=None):
     28         """
     29         Runs jpeg_encode_accelerator_unittest on the device.
     30 
     31         @param gtest_filter: test case filter.
     32 
     33         @raises: error.TestFail for jpeg_encode_accelerator_unittest failures.
     34         """
     35         url = DOWNLOAD_BASE + TEST_IMAGE_PATH
     36         local_path = os.path.join(self.bindir, os.path.basename(TEST_IMAGE_PATH))
     37         file_utils.download_file(url, local_path)
     38 
     39         cmd_line_list = [helper_logger.chrome_vmodule_flag()]
     40         if gtest_filter:
     41             cmd_line_list.append('--gtest_filter="%s"' % gtest_filter)
     42 
     43         cmd_line = ' '.join(cmd_line_list)
     44         self.run_chrome_test_binary(self.binary, cmd_line)
     45