diff options
author | kjellander@webrtc.org <kjellander@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> | 2013-08-22 07:57:00 +0000 |
---|---|---|
committer | kjellander@webrtc.org <kjellander@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> | 2013-08-22 07:57:00 +0000 |
commit | 3540c82caeb98c073265317f0a4f8892c348e99a (patch) | |
tree | a6fdb861740c83d4f96f7475daaf6f8d57683e20 /common_audio/common_audio_unittests.isolate | |
parent | 5f199d996e21b71f4b37c52f01060501373a8dce (diff) | |
download | webrtc-3540c82caeb98c073265317f0a4f8892c348e99a.tar.gz |
Isolate GYP target and .isolate files for tests
This is a re-land attempt of http://review.webrtc.org/1673004/
It now includes a build/isolate.gypi in WebRTC that includes the same
file as the one that would be included when WebRTC is used in a Chromium
checkout. It is needed since it is not possible to use variables in GYP's
includes sections.
Implemented according to the instructions at
http://www.chromium.org/developers/testing/isolated-testing
Workflow has been like this:
1. create _run GYP target
2. create a stripped down .isolate file
3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
4. runhooks
5. compile
6. test if the test would run (i.e. find it's dependencies) without
actually executing it:
tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
7. If failing, run the fix_test_cases.py script like this:
tools/swarm_client/googletest/fix_test_cases.py --isolated out/Release/testname.isolated
All tests that run on the bots for WebRTC has got _run target
and .isolate file created.
"Normal tests" that run fine on any machine:
* audio_decoder_unittests
* common_audio_unittests
* common_video_unittests
* metrics_unittests
* modules_tests
* modules_unittests
* neteq_unittests
* system_wrappers_unittests
* test_support_unittests
* tools_unittests
* video_engine_core_unittests
* voice_engine_unittests
Tests that requires bare-metal and audio/video devices:
* audio_device_tests
* video_capture_tests
I also added the isolate boilerplate code for the following
tests that are not yet pure gtest binaries (which means they
cannot run isolated yet):
* video_render_tests
* vie_auto_test
* voe_auto_test
TEST=running isolate.py as described above. WebRTC trybots passing. Created a Chromium checkout with third_party/webrtc ToT and this patch applied, passing the runhooks step.
BUG=1916
R=henrike@webrtc.org, tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2056004
git-svn-id: http://webrtc.googlecode.com/svn/trunk/webrtc@4590 4adac7df-926f-26a2-2b94-8c16560cd09d
Diffstat (limited to 'common_audio/common_audio_unittests.isolate')
-rw-r--r-- | common_audio/common_audio_unittests.isolate | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/common_audio/common_audio_unittests.isolate b/common_audio/common_audio_unittests.isolate new file mode 100644 index 00000000..7eedcd7a --- /dev/null +++ b/common_audio/common_audio_unittests.isolate @@ -0,0 +1,27 @@ +# 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=="linux" or OS=="mac" or OS=="win"', { + 'variables': { + 'command': [ + '../../testing/test_env.py', + '../../tools/swarm_client/googletest/run_test_cases.py', + '<(PRODUCT_DIR)/common_audio_unittests<(EXECUTABLE_SUFFIX)', + ], + 'isolate_dependency_tracked': [ + '../../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)/common_audio_unittests<(EXECUTABLE_SUFFIX)', + ], + }, + }], + ], +} |