Index: test/copies/gyptest-attribs.py |
=================================================================== |
--- test/copies/gyptest-attribs.py (revision 0) |
+++ test/copies/gyptest-attribs.py (revision 0) |
@@ -0,0 +1,43 @@ |
+#!/usr/bin/env python |
+ |
+# Copyright (c) 2009 Google Inc. All rights reserved. |
Mark Mentovai
2013/11/06 03:10:12
2013
Nico
2013/11/06 03:16:41
Done.
|
+# Use of this source code is governed by a BSD-style license that can be |
+# found in the LICENSE file. |
+ |
+""" |
+Verifies that copying files preserves file attributes. |
+""" |
+ |
+import TestGyp |
+ |
+import os |
+import stat |
+import sys |
+ |
+ |
+def check_attribs(path, expected_exec_bit): |
+ out_path = test.built_file_path(path, chdir='src') |
+ |
+ in_stat = os.stat(os.path.join('src', path)) |
+ out_stat = os.stat(out_path) |
+ if in_stat.st_mode != out_stat.st_mode: |
Mark Mentovai
2013/11/06 03:10:12
But checking whether the source file and the desti
Nico
2013/11/06 03:16:41
ok, removed this
(looks like mac_tool.py ignores
|
+ test.fail_test() |
+ if out_stat.st_mode & stat.S_IXUSR != expected_exec_bit: |
+ test.fail_test() |
+ |
+ |
+test = TestGyp.TestGyp() |
+ |
+test.run_gyp('copies-attribs.gyp', chdir='src') |
+ |
+test.build('copies-attribs.gyp', chdir='src') |
+ |
+if sys.platform != 'win32': |
+ out_path = test.built_file_path('executable-file.sh', chdir='src') |
+ test.must_contain(out_path, |
+ '#!/bin/bash\n' |
+ '\n' |
+ 'echo echo echo echo cho ho o o\n') |
+ check_attribs('executable-file.sh', expected_exec_bit=stat.S_IXUSR) |
+ |
+test.pass_test() |