• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (c) 2009 Google Inc. All rights reserved.
2# Use of this source code is governed by a BSD-style license that can be
3# found in the LICENSE file.
4
5# This is a simple test file to make sure that variable substitution
6# happens correctly.  Run "run_tests.py" using python to generate the
7# output from this gyp file.
8
9{
10  'variables': {
11    'pi': 'import math; print math.pi',
12    'third_letters': "<(other_letters)HIJK",
13    'letters_list': 'ABCD',
14    'other_letters': '<(letters_list)EFG',
15    'check_included': '<(included_variable)',
16    'check_lists': [
17      '<(included_variable)',
18      '<(third_letters)',
19    ],
20    'check_int': 5,
21    'check_str_int': '6',
22    'check_list_int': [
23      7,
24      '8',
25      9,
26    ],
27    'not_int_1': ' 10',
28    'not_int_2': '11 ',
29    'not_int_3': '012',
30    'not_int_4': '13.0',
31    'not_int_5': '+14',
32    'negative_int': '-15',
33    'zero_int': '0',
34  },
35  'includes': [
36    'commands.gypi',
37  ],
38  'targets': [
39    {
40      'target_name': 'foo',
41      'type': 'none',
42      'variables': {
43        'var1': '<!(["python", "-c", "<(pi)"])',
44        'var2': '<!(python -c "print \'<!(python -c "<(pi)") <(letters_list)\'")',
45        'var3': '<!(python -c "print \'<(letters_list)\'")',
46        'var4': '<(<!(python -c "print \'letters_list\'"))',
47        'var5': 'letters_',
48        'var6': 'list',
49        'var7': '<(check_int)',
50        'var8': '<(check_int)blah',
51        'var9': '<(check_str_int)',
52        'var10': '<(check_list_int)',
53        'var11': ['<@(check_list_int)'],
54        'var12': '<(not_int_1)',
55        'var13': '<(not_int_2)',
56        'var14': '<(not_int_3)',
57        'var15': '<(not_int_4)',
58        'var16': '<(not_int_5)',
59        'var17': '<(negative_int)',
60        'var18': '<(zero_int)',
61        # A second set with different names to make sure they only execute the
62        # commands once.
63        'var1prime': '<!(["python", "-c", "<(pi)"])',
64        'var2prime': '<!(python -c "print \'<!(python -c "<(pi)") <(letters_list)\'")',
65        'var3prime': '<!(python -c "print \'<(letters_list)\'")',
66        'var4prime': '<(<!(python -c "print \'letters_list\'"))',
67      },
68      'actions': [
69        {
70          'action_name': 'test_action',
71          'variables': {
72            'var7': '<!(echo <(var5)<(var6))',
73          },
74          'inputs' : [
75            '<(var2)',
76          ],
77          'outputs': [
78            '<(var4)',
79            '<(var7)',
80          ],
81          'action': [
82            'echo',
83            '<(_inputs)',
84            '<(_outputs)',
85          ],
86        },
87        # Again with the same vars to make sure the right things happened.
88        {
89          'action_name': 'test_action_prime',
90          'variables': {
91            'var7': '<!(echo <(var5)<(var6))',
92          },
93          'inputs' : [
94            '<(var2)',
95          ],
96          'outputs': [
97            '<(var4)',
98            '<(var7)',
99          ],
100          'action': [
101            'echo',
102            '<(_inputs)',
103            '<(_outputs)',
104          ],
105        },
106        # And one more time with the other vars...
107        {
108          'action_name': 'test_action_prime_prime',
109          'variables': {
110            'var7': '<!(echo <(var5)<(var6))',
111          },
112          'inputs' : [
113            '<(var2prime)',
114          ],
115          'outputs': [
116            '<(var4prime)',
117            '<(var7)',
118          ],
119          'action': [
120            'echo',
121            '<(_inputs)',
122            '<(_outputs)',
123          ],
124        },
125      ],
126    },
127  ],
128}
129