text: #!/usr/bin/env python
  
  # Copyright (c) 2012 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 'copies' with app bundles are handled correctly.
  """
  
  import TestGyp
  
  import os
  import sys
  import time
  
  if sys.platform == 'darwin':
    test = TestGyp.TestGyp(formats=['ninja', 'make', 'xcode'])
  
    test.run_gyp('framework.gyp', chdir='framework')
  
    test.build('framework.gyp', 'copy_target', chdir='framework')
  
    # Check that the copy succeeded.
    test.built_file_must_exist(
        'Test Framework.framework/foo/Dependency Bundle.framework',
        chdir='framework')
    test.built_file_must_exist(
        'Test Framework.framework/foo/Dependency Bundle.framework/Versions/A',
        chdir='framework')
    test.built_file_must_exist(
        'Test Framework.framework/Versions/A/Libraries/empty.c',
        chdir='framework')
  
  
    # Check that rebuilding the target a few times works.
    dep_bundle = test.built_file_path('Dependency Bundle.framework',
                                      chdir='framework')
    mtime = os.path.getmtime(dep_bundle)
    atime = os.path.getatime(dep_bundle)
    for i in range(3):
      os.utime(dep_bundle, (atime + i * 1000, mtime + i * 1000))
      test.build('framework.gyp', 'copy_target', chdir='framework')
  
  
    # Check that actions ran.
    test.built_file_must_exist('action_file', chdir='framework')
  
    # Test that a copy with the "Code Sign on Copy" flag on succeeds.
    test.build('framework.gyp', 'copy_target_code_sign', chdir='framework')
  
    test.pass_test()
  