# Copyright 2015 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
  'conditions': [
    ['use_x11==0', {
      'variables': {
        'command': [
          '../testing/test_env.py',
          '<(PRODUCT_DIR)/chromedriver_unittests<(EXECUTABLE_SUFFIX)',
          '--test-launcher-bot-mode',
          '--asan=<(asan)',
          '--msan=<(msan)',
          '--tsan=<(tsan)',
        ],
      },
    }],
    ['use_x11==1', {
      'variables': {
        'command': [
          '../testing/xvfb.py',
          '<(PRODUCT_DIR)',
          '<(PRODUCT_DIR)/chromedriver_unittests<(EXECUTABLE_SUFFIX)',
          '--test-launcher-bot-mode',
          '--asan=<(asan)',
          '--msan=<(msan)',
          '--tsan=<(tsan)',
        ],
        'files': [
          '../testing/xvfb.py',
          '<(PRODUCT_DIR)/xdisplaycheck<(EXECUTABLE_SUFFIX)',
        ],
      },
    }],
    ['OS=="linux" or OS=="mac" or OS=="win"', {
      'variables': {
        'files': [
          '../testing/test_env.py',
          'test/data/chromedriver/',
        ],
      },
    }],
  ],
  'includes': [
    '../base/base.isolate',
  ],
}
