diff options
| author | Greg Noel <GregNoel@tigris.org> | 2010-05-28 09:40:40 (GMT) |
|---|---|---|
| committer | Greg Noel <GregNoel@tigris.org> | 2010-05-28 09:40:40 (GMT) |
| commit | 56309561f2396659965eda63b30c69043e17d3f6 (patch) | |
| tree | 2a9eaf225729bc320b75e8f0f5f70872b3a72c8f /test/Deprecated/SourceCode/BitKeeper/BitKeeper.py | |
| parent | 1611fe9bdefe760e4fbfd0a4ae85892a3094e19e (diff) | |
| download | SCons-56309561f2396659965eda63b30c69043e17d3f6.zip SCons-56309561f2396659965eda63b30c69043e17d3f6.tar.gz SCons-56309561f2396659965eda63b30c69043e17d3f6.tar.bz2 | |
http://scons.tigris.org/issues/show_bug.cgi?id=2365
Start the deprecation cycle for SourceCode() and its related factory functions.
Deprecation messages are added to the functions. Regression tests are modified
to deal with the messages being generated. Documentation is updated.
Diffstat (limited to 'test/Deprecated/SourceCode/BitKeeper/BitKeeper.py')
| -rw-r--r-- | test/Deprecated/SourceCode/BitKeeper/BitKeeper.py | 161 |
1 files changed, 97 insertions, 64 deletions
diff --git a/test/Deprecated/SourceCode/BitKeeper/BitKeeper.py b/test/Deprecated/SourceCode/BitKeeper/BitKeeper.py index 24b9ccc..28b8761 100644 --- a/test/Deprecated/SourceCode/BitKeeper/BitKeeper.py +++ b/test/Deprecated/SourceCode/BitKeeper/BitKeeper.py @@ -20,7 +20,6 @@ # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -# __revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__" @@ -33,10 +32,23 @@ import os import TestSCons test = TestSCons.TestSCons() +test = TestSCons.TestSCons(match = TestSCons.match_re_dotall) + +test.write('SConscript', """ +Environment(tools = ['BitKeeper']).BitKeeper() +""") + +msg_bk = """The BitKeeper() factory is deprecated and there is no replacement.""" +warn_bk = test.deprecated_fatal('deprecated-build-dir', msg_bk) +msg_sc = """SourceCode() has been deprecated and there is no replacement. +\tIf you need this function, please contact dev@scons.tigris.org.""" +warn_sc = test.deprecated_wrap(msg_sc) + +test.skip_test("Need BitKeeper to debug these tests.\n") bk = test.where_is('bk') if not bk: - test.skip_test("Could not find 'bk'; skipping test(s).\n") + test.skip_test("Could not find 'bk'; skipping remaining tests.\n") try: login = os.getlogin() @@ -69,13 +81,13 @@ else: test.unlink(['work1', file]) test.unlink(['work1', ','+file]) - test.write(['work1', 'sub', 'SConscript'], """\ -Import("env") -env.Cat('ddd.out', 'ddd.in') -env.Cat('eee.out', 'eee.in') -env.Cat('fff.out', 'fff.in') -env.Cat('all', ['ddd.out', 'eee.out', 'fff.out']) -""") + test.write(['work1', 'sub', 'SConscript'], """if True: + Import("env") + env.Cat('ddd.out', 'ddd.in') + env.Cat('eee.out', 'eee.in') + env.Cat('fff.out', 'fff.in') + env.Cat('all', ['ddd.out', 'eee.out', 'fff.out']) + """) args = "create SConscript" test.run(chdir = 'work1/sub', program = sccs, arguments = args, stderr = None) test.unlink(['work1', 'sub', 'SConscript']) @@ -88,33 +100,33 @@ env.Cat('all', ['ddd.out', 'eee.out', 'fff.out']) test.unlink(['work1', 'sub', file]) test.unlink(['work1', 'sub', ','+file]) - test.write(['work1', 'SConstruct'], """ -def cat(env, source, target): - target = str(target[0]) - f = open(target, "wb") - for src in source: - f.write(open(str(src), "rb").read()) - f.close() -env = Environment(BUILDERS={'Cat':Builder(action=cat)}, - BITKEEPERGETFLAGS='-e') -env.Cat('aaa.out', 'aaa.in') -env.Cat('bbb.out', 'bbb.in') -env.Cat('ccc.out', 'ccc.in') -env.Cat('all', ['aaa.out', 'bbb.out', 'ccc.out']) -env.SourceCode('.', env.BitKeeper()) -SConscript('sub/SConscript', "env") -""") + test.write(['work1', 'SConstruct'], """if True: + SetOption('warn', 'deprecated-source-code') + def cat(env, source, target): + target = str(target[0]) + f = open(target, "wb") + for src in source: + f.write(open(str(src), "rb").read()) + f.close() + env = Environment(BUILDERS={'Cat':Builder(action=cat)}, + BITKEEPERGETFLAGS='-e') + env.Cat('aaa.out', 'aaa.in') + env.Cat('bbb.out', 'bbb.in') + env.Cat('ccc.out', 'ccc.in') + env.Cat('all', ['aaa.out', 'bbb.out', 'ccc.out']) + env.SourceCode('.', env.BitKeeper()) + SConscript('sub/SConscript', "env") + """) test.write(['work1', 'bbb.in'], "checked-out work1/bbb.in\n") test.write(['work1', 'sub', 'eee.in'], "checked-out work1/sub/eee.in\n") - test.run(chdir = 'work1', - arguments = '.', - stdout = test.wrap_stdout(read_str = """\ + read_str = """\ bk get -e sub/SConscript -""", - build_str = """\ +""" + + build_str = """\ bk get -e aaa.in cat(["aaa.out"], ["aaa.in"]) cat(["bbb.out"], ["bbb.in"]) @@ -127,14 +139,21 @@ cat(["sub/eee.out"], ["sub/eee.in"]) bk get -e sub/fff.in cat(["sub/fff.out"], ["sub/fff.in"]) cat(["sub/all"], ["sub/ddd.out", "sub/eee.out", "sub/fff.out"]) -"""), - stderr = """\ +""" + + stdout = test.wrap_stdout(read_str = read_str, build_str = build_str) + + stderr = """\ sub/SConscript 1.1 -> 1.2: 5 lines aaa.in 1.1 -> 1.2: 1 lines ccc.in 1.1 -> 1.2: 1 lines sub/ddd.in 1.1 -> 1.2: 1 lines sub/fff.in 1.1 -> 1.2: 1 lines -""") +""" + + test.run(arguments = '.', + stdout = TestSCons.re_escape(stdout), + stderr = warn_bk + warn_sc + TestSCons.re_escape(stderr)) test.must_match(['work1', 'all'], "work1/aaa.in\nchecked-out work1/bbb.in\nwork1/ccc.in\n") @@ -187,34 +206,34 @@ env.Cat('all', ['ddd.out', 'eee.out', 'fff.out']) test.no_result(os.path.exists(test.workpath('work2', 'sub', 'eee.in'))) test.no_result(os.path.exists(test.workpath('work2', 'sub', 'fff.in'))) - test.write(['work2', 'SConstruct'], """\ -def cat(env, source, target): - target = str(target[0]) - f = open(target, "wb") - for src in source: - f.write(open(str(src), "rb").read()) - f.close() -env = Environment(BUILDERS={'Cat':Builder(action=cat)}, - BITKEEPERGET='$BITKEEPER co', - BITKEEPERGETFLAGS='-q') -env.Cat('aaa.out', 'aaa.in') -env.Cat('bbb.out', 'bbb.in') -env.Cat('ccc.out', 'ccc.in') -env.Cat('all', ['aaa.out', 'bbb.out', 'ccc.out']) -env.SourceCode('.', env.BitKeeper()) -SConscript('sub/SConscript', "env") -""") + test.write(['work2', 'SConstruct'], """if True: + SetOption('warn', 'deprecated-source-code') + def cat(env, source, target): + target = str(target[0]) + f = open(target, "wb") + for src in source: + f.write(open(str(src), "rb").read()) + f.close() + env = Environment(BUILDERS={'Cat':Builder(action=cat)}, + BITKEEPERGET='$BITKEEPER co', + BITKEEPERGETFLAGS='-q') + env.Cat('aaa.out', 'aaa.in') + env.Cat('bbb.out', 'bbb.in') + env.Cat('ccc.out', 'ccc.in') + env.Cat('all', ['aaa.out', 'bbb.out', 'ccc.out']) + env.SourceCode('.', env.BitKeeper()) + SConscript('sub/SConscript', "env") + """) test.write(['work2', 'bbb.in'], "checked-out work2/bbb.in\n") test.write(['work2', 'sub', 'eee.in'], "checked-out work2/sub/eee.in\n") - test.run(chdir = 'work2', - arguments = '.', - stdout = test.wrap_stdout(read_str = """\ + read_str = """\ bk co -q sub/SConscript -""", - build_str = """\ +""" + + build_str = """\ bk co -q aaa.in cat(["aaa.out"], ["aaa.in"]) cat(["bbb.out"], ["bbb.in"]) @@ -227,7 +246,13 @@ cat(["sub/eee.out"], ["sub/eee.in"]) bk co -q sub/fff.in cat(["sub/fff.out"], ["sub/fff.in"]) cat(["sub/all"], ["sub/ddd.out", "sub/eee.out", "sub/fff.out"]) -""")) +""" + + stdout = test.wrap_stdout(read_str = read_str, build_str = build_str) + + test.run(arguments = '.', + stdout = TestSCons.re_escape(stdout), + stderr = warn_bk + warn_sc) test.must_match(['work2', 'all'], "work2/aaa.in\nchecked-out work2/bbb.in\nwork2/ccc.in\n") @@ -283,6 +308,7 @@ test.run(chdir = 'import', arguments = 'import -q -f -tplain . %s' % test.workpath('work3')) test.write(['work3', 'SConstruct'], """ +SetOption('warn', 'deprecated-source-code') def cat(env, source, target): target = str(target[0]) f = open(target, "wb") @@ -303,12 +329,11 @@ test.write(['work3', 'bbb.in'], "work3/bbb.in\n") test.subdir(['work3', 'sub']) test.write(['work3', 'sub', 'eee.in'], "work3/sub/eee.in\n") -test.run(chdir = 'work3', - arguments = '.', - stdout = test.wrap_stdout(read_str = """\ +read_str = """\ %s get sub/SConscript -""" % bk, - build_str = """\ +""" % bk + +build_str = """\ %s get aaa.in cat(["aaa.out"], ["aaa.in"]) cat(["bbb.out"], ["bbb.in"]) @@ -321,14 +346,22 @@ cat(["sub/eee.out"], ["sub/eee.in"]) %s get sub/fff.in cat(["sub/fff.out"], ["sub/fff.in"]) cat(["sub/all"], ["sub/ddd.out", "sub/eee.out", "sub/fff.out"]) -""" % (bk, bk, bk, bk)), - stderr = """\ +""" % (bk, bk, bk, bk) + +stdout = test.wrap_stdout(read_str = read_str, build_str = build_str) + +stderr = """\ sub/SConscript 1.1: 5 lines aaa.in 1.1: 1 lines ccc.in 1.1: 1 lines sub/ddd.in 1.1: 1 lines sub/fff.in 1.1: 1 lines -""") +""" + +test.run(chdir = 'work3', + arguments = '.', + stdout = TestSCons.re_escape(stdout), + stderr = TestSCons.re_escape(stderr)) test.must_match(['work3', 'all'], "import/aaa.in\nwork3/bbb.in\nimport/ccc.in\n") |
