Index: test/mac/gyptest-bundle-resources.py |
=================================================================== |
--- test/mac/gyptest-bundle-resources.py (revision 1778) |
+++ test/mac/gyptest-bundle-resources.py (working copy) |
@@ -10,8 +10,24 @@ |
import TestGyp |
+import os |
+import stat |
import sys |
+ |
+def check_attribs(path): |
+ out_path = test.built_file_path( |
+ os.path.join('resource.app/Contents/Resources', path), chdir=CHDIR) |
+ |
+ in_stat = os.stat(os.path.join(CHDIR, path)) |
+ out_stat = os.stat(out_path) |
+ if in_stat.st_mode != out_stat.st_mode: |
Mark Mentovai
2013/11/06 02:50:40
You’re returning the mode for comparison outside o
Nico
2013/11/06 02:58:16
I'm only returning the out_stat.st_mode, and only
|
+ test.fail_test() |
+ if in_stat.st_mtime == out_stat.st_mtime: |
+ test.fail_test() |
+ return out_stat.st_mode |
+ |
+ |
if sys.platform == 'darwin': |
# set |match| to ignore build stderr output. |
test = TestGyp.TestGyp(formats=['ninja', 'make', 'xcode']) |
@@ -26,6 +42,17 @@ |
test.built_file_must_match('source_rule.app/Contents/Resources/secret.txt', |
'ABC\n', chdir=CHDIR) |
+ test.built_file_must_match( |
+ 'resource.app/Contents/Resources/executable-file.sh', |
+ '#!/bin/bash\n' |
+ '\n' |
+ 'echo echo echo echo cho ho o o\n', chdir=CHDIR) |
+ |
+ if check_attribs('executable-file.sh') & stat.S_IXUSR == 0: |
+ test.fail_test() |
+ if check_attribs('secret.txt') & stat.S_IXUSR != 0: |
+ test.fail_test() |
+ |
# TODO(thakis): This currently fails with make. |
if test.format != 'make': |
test.built_file_must_match( |