Home | History | Annotate | Download | only in filelist
      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 variable expansion of '<|(list.txt ...)' syntax commands.
      9 """
     10 
     11 import os
     12 import sys
     13 
     14 import TestGyp
     15 
     16 test = TestGyp.TestGyp(format='gypd')
     17 
     18 expect = test.read('filelist.gyp.stdout')
     19 if sys.platform == 'win32':
     20   expect = expect.replace('/', r'\\').replace('\r\n', '\n')
     21 
     22 test.run_gyp('src/filelist.gyp',
     23              '--debug', 'variables',
     24              stdout=expect, ignore_line_numbers=True)
     25 
     26 # Verify the filelist.gypd against the checked-in expected contents.
     27 #
     28 # Normally, we should canonicalize line endings in the expected
     29 # contents file setting the Subversion svn:eol-style to native,
     30 # but that would still fail if multiple systems are sharing a single
     31 # workspace on a network-mounted file system.  Consequently, we
     32 # massage the Windows line endings ('\r\n') in the output to the
     33 # checked-in UNIX endings ('\n').
     34 
     35 contents = test.read('src/filelist.gypd').replace(
     36     '\r', '').replace('\\\\', '/')
     37 expect = test.read('filelist.gypd.golden').replace('\r', '')
     38 if not test.match(contents, expect):
     39   print "Unexpected contents of `src/filelist.gypd'"
     40   test.diff(expect, contents, 'src/filelist.gypd ')
     41   test.fail_test()
     42 
     43 contents = test.read('src/names.txt')
     44 expect = 'John\nJacob\nJingleheimer\nSchmidt\n'
     45 if not test.match(contents, expect):
     46   print "Unexpected contents of `src/names.txt'"
     47   test.diff(expect, contents, 'src/names.txt ')
     48   test.fail_test()
     49 
     50 test.pass_test()
     51 
     52