Home | History | Annotate | Download | only in same-target-name-different-directory
      1 #!/usr/bin/env python
      2 
      3 # Copyright (c) 2012 Google Inc. All rights reserved.
      4 # Use of this source code is governed by a BSD-style license that can be
      5 # found in the LICENSE file.
      6 
      7 """
      8 Test cases when multiple targets in different directories have the same name.
      9 """
     10 
     11 import TestGyp
     12 
     13 test = TestGyp.TestGyp(formats=['ninja', 'make'])
     14 
     15 # xcode-ninja fails to generate a project due to id collisions
     16 # cf. https://code.google.com/p/gyp/issues/detail?id=461
     17 if test.format == 'xcode-ninja':
     18   test.skip_test()
     19 
     20 test.run_gyp('subdirs.gyp', chdir='src')
     21 
     22 test.relocate('src', 'relocate/src')
     23 
     24 # Test that we build all targets.
     25 test.build('subdirs.gyp', 'target', chdir='relocate/src')
     26 test.must_exist('relocate/src/subdir1/action1.txt')
     27 test.must_exist('relocate/src/subdir2/action2.txt')
     28 
     29 # Test that we build all targets using the correct actions, even if they have
     30 # the same names.
     31 test.build('subdirs.gyp', 'target_same_action_name', chdir='relocate/src')
     32 test.must_exist('relocate/src/subdir1/action.txt')
     33 test.must_exist('relocate/src/subdir2/action.txt')
     34 
     35 # Test that we build all targets using the correct rules, even if they have
     36 # the same names.
     37 test.build('subdirs.gyp', 'target_same_rule_name', chdir='relocate/src')
     38 test.must_exist('relocate/src/subdir1/rule.txt')
     39 test.must_exist('relocate/src/subdir2/rule.txt')
     40 
     41 test.pass_test()
     42