#!/usr/bin/python # Copyright 2003 Dave Abrahams # Copyright 2006 Rene Rivera # Copyright 2003 Vladimir Prus # Distributed under the Boost Software License, Version 1.0. # (See accompanying file LICENSE_1_0.txt or http://www.boost.org/LICENSE_1_0.txt) import BoostBuild import os import re spaces_re = re.compile("\ \ +") trailing_spaces_re = re.compile("\ +\n") t = BoostBuild.Tester("-d+1", pass_toolset=0) t.set_tree('module-actions') # Note that the following string contains some trailing spaces that should not # be removed. expected_output = """...found 4 targets... ...updating 3 targets... A.act t1 A.act t1: X1-t1 B.act t1 B.act t1: X1-t1 X2-B act t1 act t1: X1-t1 X2-global X3-global A.act t2 A.act t2: X1-A X2-t2 B.act t2 B.act t2: X2-t2 act t2 act t2: X1-global X2-t2 X3-global A.act t3 A.act t3: X1-A X3-t3 B.act t3 B.act t3: X2-B X3-t3 act t3 act t3: X1-global X2-global X3-t3 ...updated 3 targets... """ # On Unixes, call to 'echo 1 2 3' produces '1 2 3' (note the spacing) # Accomodate for that fact. if os.name != 'nt': expected_output = re.sub(spaces_re, " ", expected_output) expected_output = re.sub(trailing_spaces_re, "\n", expected_output) t.run_build_system(stdout=expected_output) t.expect_nothing_more() t.cleanup()