summaryrefslogtreecommitdiffstats
path: root/third_party/python/gyp/test/mac/gyptest-xctest.py
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/python/gyp/test/mac/gyptest-xctest.py')
-rw-r--r--third_party/python/gyp/test/mac/gyptest-xctest.py41
1 files changed, 41 insertions, 0 deletions
diff --git a/third_party/python/gyp/test/mac/gyptest-xctest.py b/third_party/python/gyp/test/mac/gyptest-xctest.py
new file mode 100644
index 0000000000..fb478bb31c
--- /dev/null
+++ b/third_party/python/gyp/test/mac/gyptest-xctest.py
@@ -0,0 +1,41 @@
+#!/usr/bin/env python
+
+# Copyright (c) 2013 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 xctest targets are correctly configured.
+"""
+
+import TestGyp
+
+import sys
+
+if sys.platform == 'darwin':
+ test = TestGyp.TestGyp(formats=['xcode'])
+
+ # This test appears to be flaky.
+ test.skip_test() # bug=531
+
+ # Ignore this test if Xcode 5 is not installed
+ import subprocess
+ job = subprocess.Popen(['xcodebuild', '-version'],
+ stdout=subprocess.PIPE,
+ stderr=subprocess.STDOUT)
+ out, err = job.communicate()
+ if job.returncode != 0:
+ raise Exception('Error %d running xcodebuild' % job.returncode)
+ xcode_version, build_number = out.splitlines()
+ # Convert the version string from 'Xcode 5.0' to ['5','0'].
+ xcode_version = xcode_version.split()[-1].split('.')
+ if xcode_version < ['5']:
+ test.pass_test()
+
+ CHDIR = 'xctest'
+ test.run_gyp('test.gyp', chdir=CHDIR)
+ test.build('test.gyp', chdir=CHDIR, arguments=['-scheme', 'classes', 'test'])
+
+ test.built_file_must_match('tests.xctest/Contents/Resources/resource.txt',
+ 'foo\n', chdir=CHDIR)
+ test.pass_test()