Source code

Revision control

Copy as Markdown

Other Tools

#!/usr/bin/env python
# Copyright (c) 2016 Mark Callow. 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 files are copied to the correct destinations when those
destinations are specified using environment variables available in
Xcode's PBXCopyFilesBuildPhase.
"""
import TestGyp
import os
import stat
import sys
test = TestGyp.TestGyp(formats=['make', 'ninja', 'xcode'])
if sys.platform == 'darwin':
test.run_gyp('copies-with-xcode-envvars.gyp',
chdir='copies-with-xcode-envvars')
test.build('copies-with-xcode-envvars.gyp', chdir='copies-with-xcode-envvars')
wrapper_name = 'copies-with-xcode-envvars.app/'
contents_path = wrapper_name + 'Contents/'
out_path = test.built_file_path('file0', chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file0 contents\n')
out_path = test.built_file_path(wrapper_name + 'file1',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file1 contents\n')
out_path = test.built_file_path(contents_path + 'MacOS/file2',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file2 contents\n')
out_path = test.built_file_path(contents_path + 'Resources/file3',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file3 contents\n')
out_path = test.built_file_path(contents_path + 'Resources/testimages/file4',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file4 contents\n')
out_path = test.built_file_path(contents_path + 'Resources/Java/file5',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file5 contents\n')
out_path = test.built_file_path(contents_path + 'Frameworks/file6',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file6 contents\n')
out_path = test.built_file_path(contents_path + 'Frameworks/file7',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file7 contents\n')
out_path = test.built_file_path(contents_path + 'SharedFrameworks/file8',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file8 contents\n')
out_path = test.built_file_path(contents_path + 'SharedSupport/file9',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file9 contents\n')
out_path = test.built_file_path(contents_path + 'PlugIns/file10',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file10 contents\n')
out_path = test.built_file_path(contents_path + 'XPCServices/file11',
chdir='copies-with-xcode-envvars')
test.must_contain(out_path, 'file11 contents\n')
test.pass_test()