summaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorSteven Knight <knight@baldmt.com>2010-06-10 05:25:10 (GMT)
committerSteven Knight <knight@baldmt.com>2010-06-10 05:25:10 (GMT)
commitb9bf799d4ee594f37b3a404a4e18dbee3fe56533 (patch)
tree7bf712a37e7909afdf185720c4e50a010e0d0008 /test
parent6ba5cdf115d19504dd8204d5cc35dc3882db37ee (diff)
downloadSCons-b9bf799d4ee594f37b3a404a4e18dbee3fe56533.zip
SCons-b9bf799d4ee594f37b3a404a4e18dbee3fe56533.tar.gz
SCons-b9bf799d4ee594f37b3a404a4e18dbee3fe56533.tar.bz2
Move test/update-release-info.py to src/test_update-release-info.py.
Diffstat (limited to 'test')
-rw-r--r--test/update-release-info.py244
1 files changed, 0 insertions, 244 deletions
diff --git a/test/update-release-info.py b/test/update-release-info.py
deleted file mode 100644
index 4de60df..0000000
--- a/test/update-release-info.py
+++ /dev/null
@@ -1,244 +0,0 @@
-#!/usr/bin/env python
-#
-# __COPYRIGHT__
-#
-# Permission is hereby granted, free of charge, to any person obtaining
-# a copy of this software and associated documentation files (the
-# "Software"), to deal in the Software without restriction, including
-# without limitation the rights to use, copy, modify, merge, publish,
-# distribute, sublicense, and/or sell copies of the Software, and to
-# permit persons to whom the Software is furnished to do so, subject to
-# the following conditions:
-#
-# The above copyright notice and this permission notice shall be included
-# in all copies or substantial portions of the Software.
-#
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY
-# KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
-# WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-# NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
-# 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.
-"""
-Test bin/update-release-info.py. Also verify that the original files
-have the appropriate triggers to cause the modifications.
-"""
-
-__revision__ = "__FILE__ __REVISION__ __DATE__ __DEVELOPER__"
-
-import os, sys, time
-
-import TestRuntest
-
-TestSCons = 'QMTest/TestSCons.py' .split('/')
-README = 'README' .split('/')
-ReleaseConfig = 'ReleaseConfig' .split('/')
-SConstruct = 'SConstruct' .split('/')
-Announce = 'src/Announce.txt' .split('/')
-CHANGES = 'src/CHANGES.txt' .split('/')
-RELEASE = 'src/RELEASE.txt' .split('/')
-Main = 'src/engine/SCons/Script/Main.py' .split('/')
-
-test = TestRuntest.TestRuntest(
- program = os.path.join('bin', 'update-release-info.py'),
- things_to_copy = ['bin']
- )
-
-test.run(arguments = 'bad', status = 1)
-
-# Strings to go in ReleaseConfig
-combo_strings = [
-# Index 0: version tuple with bad release level
-"""version_tuple = (2, 0, 0, 'bad', 0)
-""",
-# Index 1: Python version tuple
-"""unsupported_python_version = (2, 3)
-""",
-# Index 2: Python version tuple
-"""deprecated_python_version = (2, 4)
-""",
-# Index 3: alpha version tuple
-"""version_tuple = (2, 0, 0, 'alpha', 0)
-""",
-# Index 4: final version tuple
-"""version_tuple = (2, 0, 0, 'final', 0)
-""",
-# Index 5: bad release date
-"""release_date = (2010, 12)
-""",
-# Index 6: release date (hhhh, mm, dd)
-"""release_date = (2010, 12, 21)
-""",
-# Index 7: release date (hhhh, mm, dd, hh, mm, ss)
-"""release_date = (2010, 12, 21, 12, 21, 12)
-""",
-]
-
-combo_error = \
-"""ERROR: Config file must contain at least version_tuple,
-\tunsupported_python_version, and deprecated_python_version.
-"""
-
-def combo_fail(*args, **kw):
- kw.setdefault('status', 1)
- combo_run(*args, **kw)
-
-def combo_run(*args, **kw):
- t = '\n'
- for a in args:
- t += combo_strings[a]
-
- test.write(ReleaseConfig, t)
-
- kw.setdefault('stdout', combo_error)
- test.run(**kw)
-
-combo_fail()
-combo_fail(0)
-combo_fail(1)
-combo_fail(2)
-combo_fail(0, 1)
-combo_fail(0, 2)
-combo_fail(1, 2)
-combo_fail(0, 1, 2, stdout =
-"""ERROR: `bad' is not a valid release type in version tuple;
-\tit must be one of alpha, beta, candidate, or final
-""")
-
-# We won't need this entry again, so put in a default
-combo_strings[0] = combo_strings[1] + combo_strings[2] + combo_strings[3]
-
-combo_fail(0, 5, stdout =
-"""ERROR: Invalid release date (2010, 12)
-""")
-
-def pave(path):
- path = path[:-1]
- if not path or os.path.isdir(os.path.join(*path)):
- return
- pave(path)
- test.subdir(path)
-
-def pave_write(file, contents):
- pave(file)
- test.write(file, contents)
-
-pave_write(CHANGES, """
-RELEASE It doesn't matter what goes here...
-""")
-
-pave_write(RELEASE, """
-This file has a 3.2.1.beta.20121221 version string in it
-""")
-
-pave_write(Announce, """
-RELEASE It doesn't matter what goes here...
-""")
-
-pave_write(SConstruct, """
-month_year = 'March 1945'
-copyright_years = '2001, 2002, 2003, 2004, 2005, 2006, 2007'
-default_version = '0.98.97'
-""")
-
-pave_write(README, """
-These files are a part of 33.22.11:
- scons-33.22.11.tar.gz
- scons-33.22.11.win32.exe
- scons-33.22.11.zip
-
- scons-33.22.11.beta.20012122112.suffix
-""")
-
-pave_write(TestSCons, """
-copyright_years = Some junk to be overwritten
-default_version = More junk
-python_version_unsupported = Yep, more junk
-python_version_deprecated = And still more
-""")
-
-pave_write(Main, """
-unsupported_python_version = Not done with junk
-deprecated_python_version = It goes on forever
-""")
-
-def updating_run(*args):
- stdout = ''
- for file in args:
- stdout += 'Updating %s...\n' % os.path.join(*file)
- combo_run(0, 7, stdout = stdout)
-
-updating_run(CHANGES, RELEASE, Announce, SConstruct, README, TestSCons, Main)
-
-test.must_match(CHANGES, """
-RELEASE 2.0.0.alpha.yyyymmdd - NEW DATE WILL BE INSERTED HERE
-""", mode = 'r')
-
-test.must_match(RELEASE, """
-This file has a 2.0.0.alpha.yyyymmdd version string in it
-""", mode = 'r')
-
-test.must_match(Announce, """
-RELEASE 2.0.0.alpha.yyyymmdd - NEW DATE WILL BE INSERTED HERE
-""", mode = 'r')
-
-years = ', '.join(map(str, iter(range(2001, time.localtime()[0] + 1))))
-test.must_match(SConstruct, """
-month_year = 'MONTH YEAR'
-copyright_years = %s
-default_version = '2.0.0.alpha.yyyymmdd'
-""" % repr(years), mode = 'r')
-
-test.must_match(README, """
-These files are a part of 33.22.11:
- scons-2.0.0.alpha.yyyymmdd.tar.gz
- scons-2.0.0.alpha.yyyymmdd.win32.exe
- scons-2.0.0.alpha.yyyymmdd.zip
-
- scons-2.0.0.alpha.yyyymmdd.suffix
-""", mode = 'r')
-
-# should get Python floors from TestSCons module.
-test.must_match(TestSCons, """
-copyright_years = '2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010'
-default_version = '2.0.0.alpha.yyyymmdd'
-python_version_unsupported = (2, 3)
-python_version_deprecated = (2, 4)
-""", mode = 'r')
-
-# should get Python floors from TestSCons module.
-test.must_match(Main, """
-unsupported_python_version = (2, 3)
-deprecated_python_version = (2, 4)
-""", mode = 'r')
-
-#TODO: Release option
-#TODO: ==============
-#TODO:
-#TODO: Dates in beta/candidate flow
-#TODO:
-#TODO: Dates in final flow
-#TODO:
-#TODO: Post option
-#TODO: ===========
-#TODO:
-#TODO: Dates in post flow
-#TODO:
-#TODO: Update minor or micro version
-#TODO:
-#TODO: ReleaseConfig - new version tuple
-#TODO:
-#TODO: CHANGES - new section
-#TODO:
-#TODO: RELEASE - new template
-#TODO:
-#TODO: Announce - new section
-
-test.pass_test()
-
-# Local Variables:
-# tab-width:4
-# indent-tabs-mode:nil
-# End:
-# vim: set expandtab tabstop=4 shiftwidth=4: