diff options
Diffstat (limited to 'third_party/python/gyp/test/ios/xctests/gyptest-xctests.py')
-rw-r--r-- | third_party/python/gyp/test/ios/xctests/gyptest-xctests.py | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/third_party/python/gyp/test/ios/xctests/gyptest-xctests.py b/third_party/python/gyp/test/ios/xctests/gyptest-xctests.py new file mode 100644 index 0000000000..6642cfb938 --- /dev/null +++ b/third_party/python/gyp/test/ios/xctests/gyptest-xctests.py @@ -0,0 +1,49 @@ +#!/usr/bin/env python + +# Copyright 2015 Google Inc. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +""" +Verifies that iOS XCTests can be built correctly. +""" + +import TestGyp + +import os +import subprocess +import sys + +def HasCerts(): + # Because the bots do not have certs, don't check them if there are no + # certs available. + proc = subprocess.Popen(['security','find-identity','-p', 'codesigning', + '-v'], stdout=subprocess.PIPE) + return "0 valid identities found" not in proc.communicate()[0].strip() + +if sys.platform == "darwin": + # This test appears to be flaky and hangs some of the time. + sys.exit(2) # bug=531 + + test = TestGyp.TestGyp(formats=['xcode', 'ninja']) + test.run_gyp('xctests.gyp') + test_configs = ['Default'] + # TODO(crbug.com/557418): Enable this once xcodebuild works for iOS devices. + #if HasCerts() and test.format == 'xcode': + # test_configs.append('Default-iphoneos') + for config in test_configs: + test.set_configuration(config) + test.build('xctests.gyp', test.ALL) + test.built_file_must_exist('app_under_test.app/app_under_test') + test.built_file_must_exist('app_tests.xctest/app_tests') + if 'ninja' in test.format: + test.built_file_must_exist('obj/AppTests/app_tests.AppTests.i386.o') + test.built_file_must_exist('obj/AppTests/app_tests.AppTests.x86_64.o') + elif test.format == 'xcode': + xcode_object_path = os.path.join('..', 'xctests.build', + 'Default-iphonesimulator', + 'app_tests.build', 'Objects-normal', + '%s', 'AppTests.o') + test.built_file_must_exist(xcode_object_path % 'i386') + test.built_file_must_exist(xcode_object_path % 'x86_64') + test.pass_test() |