# Copyright (c) 2013 The WebRTC project authors. All Rights Reserved.
#
# Use of this source code is governed by a BSD-style license
# that can be found in the LICENSE file in the root of the source
# tree. An additional intellectual property rights grant can be found
# in the file PATENTS.  All contributing project authors may
# be found in the AUTHORS file in the root of the source tree.
{
  'conditions': [
    ['OS=="android"', {
      # When doing Android builds, the WebRTC code is put in third_party/webrtc
      # of a Chromium checkout, this is one level above the standalone build.
      'variables': {
        'isolate_dependency_untracked': [
          '../../../../../resources/',
          '../../../../../data/',
        ],
      },
    }],
    ['OS=="linux" or OS=="mac" or OS=="win"', {
      'variables': {
        'command': [
          '../../../../testing/test_env.py',
          '../../../../tools/swarm_client/googletest/run_test_cases.py',
          '<(PRODUCT_DIR)/audio_decoder_unittests<(EXECUTABLE_SUFFIX)',
        ],
        'isolate_dependency_touched': [
          '../../../../DEPS',
        ],
        'isolate_dependency_tracked': [
          '../../../../resources/audio_coding/testfile32kHz.pcm',
          '../../../../testing/test_env.py',
          '../../../../tools/swarm_client/run_isolated.py',
          '../../../../tools/swarm_client/googletest/run_test_cases.py',
          '../../../../tools/swarm_client/third_party/upload.py',
          '<(PRODUCT_DIR)/audio_decoder_unittests<(EXECUTABLE_SUFFIX)',
        ],
      },
    }],
  ],
}
