# Copyright 2016 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

# This file has been automatically generated. Do not edit!

AUTHOR = 'ARC Team'
NAME = 'cheets_CTS.x86.com.drawelements.deqp.gles31.copy_image_mixed'
ATTRIBUTES = 'suite:cts'
DEPENDENCIES = 'arc, cts_abi_x86'
JOB_RETRIES = 2
TEST_TYPE = 'server'
TIME = 'LENGTHY'

DOC = ('Run package com.drawelements.deqp.gles31.copy_image_mixed of the '
       'Android 6.0_r12 Compatibility Test Suite (CTS), build 3426263,'
       'using x86 ABI in the ARC container.')

def run_CTS(machine):
    host = hosts.create_host(machine)
    job.run_test(
        'cheets_CTS',
        host=host,
        iterations=1,
        tag='com.drawelements.deqp.gles31.copy_image_mixed',
        target_package='com.drawelements.deqp.gles31.copy_image_mixed',
        bundle='x86',
        timeout=7200)

parallel_simple(run_CTS, machines)