[Python-checkins] CVS: python/dist/src/Lib/test test___future__.py,NONE,1.1

Tim Peters tim_one@users.sourceforge.net
Mon, 26 Feb 2001 13:14:51 -0800


Update of /cvsroot/python/python/dist/src/Lib/test
In directory usw-pr-cvs1:/tmp/cvs-serv22113/python/dist/src/Lib/test

Added Files:
	test___future__.py 
Log Message:
Add __future__.py to std library, + dull test to verify that assignments
therein are of the proper form.


--- NEW FILE: test___future__.py ---
#! /usr/bin/env python
from test_support import verbose, verify
from types import TupleType, StringType, IntType
import __future__

GOOD_SERIALS = ("alpha", "beta", "candidate", "final")

features = [x for x in dir(__future__) if x[:1] != "_"]
for feature in features:
    value = getattr(__future__, feature)
    if verbose:
        print "Checking __future__ ", feature, "value", value
    verify(type(value) is TupleType, "feature value isn't tuple")
    verify(len(value) == 2, "feature value isn't 2-tuple")

    optional, mandatory = value

    verify(type(optional) is TupleType, "optional isn't tuple")
    verify(len(optional) == 5, "optional isn't 5-tuple")
    major, minor, micro, level, serial = optional
    verify(type(major) is IntType, "optional major isn't int")
    verify(type(minor) is IntType, "optional minor isn't int")
    verify(type(micro) is IntType, "optional micro isn't int")
    verify(type(level) is StringType, "optional level isn't string")
    verify(level in GOOD_SERIALS,
           "optional level string has unknown value")
    verify(type(serial) is IntType, "optional serial isn't int")

    verify(type(mandatory) is TupleType or
           mandatory is None, "mandatory isn't tuple or None")
    if mandatory is not None:
        verify(len(mandatory) == 5, "mandatory isn't 5-tuple")
        major, minor, micro, level, serial = mandatory
        verify(type(major) is IntType, "mandatory major isn't int")
        verify(type(minor) is IntType, "mandatory minor isn't int")
        verify(type(micro) is IntType, "mandatory micro isn't int")
        verify(type(level) is StringType, "mandatory level isn't string")
        verify(level in GOOD_SERIALS,
               "mandatory serial string has unknown value")
        verify(type(serial) is IntType, "mandatory serial isn't int")
        verify(optional < mandatory,
               "optional not less than mandatory, and mandatory not None")