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""" 8Test that environment variables are ignored when --ignore-environment is 9specified. 10""" 11 12import os 13 14import TestGyp 15 16test = TestGyp.TestGyp(format='gypd') 17 18os.environ['GYP_DEFINES'] = 'FOO=BAR' 19os.environ['GYP_GENERATORS'] = 'foo' 20os.environ['GYP_GENERATOR_FLAGS'] = 'genflag=foo' 21os.environ['GYP_GENERATOR_OUTPUT'] = 'somedir' 22 23expect = test.read('commands.gyp.ignore-env.stdout').replace('\r\n', '\n') 24 25test.run_gyp('commands.gyp', 26 '--debug', 'variables', 27 '--ignore-environment', 28 stdout=expect, ignore_line_numbers=True) 29 30# Verify the commands.gypd against the checked-in expected contents. 31# 32# Normally, we should canonicalize line endings in the expected 33# contents file setting the Subversion svn:eol-style to native, 34# but that would still fail if multiple systems are sharing a single 35# workspace on a network-mounted file system. Consequently, we 36# massage the Windows line endings ('\r\n') in the output to the 37# checked-in UNIX endings ('\n'). 38 39contents = test.read('commands.gypd').replace('\r', '') 40expect = test.read('commands.gypd.golden').replace('\r', '') 41if not test.match(contents, expect): 42 print "Unexpected contents of `commands.gypd'" 43 test.diff(expect, contents, 'commands.gypd ') 44 test.fail_test() 45 46test.pass_test() 47