File: gyptest-multiple-values.py

package info (click to toggle)
firefox-esr 91.12.0esr-1~deb10u1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 3,375,668 kB
  • sloc: cpp: 5,762,032; javascript: 5,481,714; ansic: 3,121,206; python: 851,492; asm: 331,174; xml: 178,949; java: 155,554; sh: 63,704; makefile: 20,127; perl: 12,825; yacc: 4,583; cs: 3,846; objc: 3,026; lex: 1,720; exp: 762; pascal: 635; php: 436; lisp: 260; awk: 231; ruby: 103; sed: 53; sql: 46; csh: 45
file content (36 lines) | stat: -rw-r--r-- 1,013 bytes parent folder | download | duplicates (42)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/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 when multiple values are supplied for a gyp define, the last one
is used.
"""

import os
import TestGyp

test = TestGyp.TestGyp()

os.environ['GYP_DEFINES'] = 'key=value1 key=value2 key=value3'
test.run_gyp('defines.gyp')

test.build('defines.gyp')
test.must_contain('action.txt', 'value3')

# The last occurrence of a repeated set should take precedence over other
# values.
os.environ['GYP_DEFINES'] = 'key=repeated_value key=value1 key=repeated_value'
test.run_gyp('defines.gyp')

if test.format == 'msvs' and not test.uses_msbuild:
  # msvs versions before 2010 don't detect build rule changes not reflected
  # in file system timestamps. Rebuild to see differences.
  test.build('defines.gyp', rebuild=True)
else:
  test.build('defines.gyp')
test.must_contain('action.txt', 'repeated_value')

test.pass_test()