diff options
author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2013-06-25 22:59:01 +0000 |
---|---|---|
committer | <> | 2013-09-27 11:49:28 +0000 |
commit | 8c4528713d907ee2cfd3bfcbbad272c749867f84 (patch) | |
tree | c09e2ce80f47b90c85cc720f5139089ad9c8cfff /libs/python/test/slice.py | |
download | boost-tarball-baserock/morph.tar.gz |
Imported from /home/lorry/working-area/delta_boost-tarball/boost_1_54_0.tar.bz2.boost_1_54_0baserock/morph
Diffstat (limited to 'libs/python/test/slice.py')
-rw-r--r-- | libs/python/test/slice.py | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/libs/python/test/slice.py b/libs/python/test/slice.py new file mode 100644 index 000000000..95f4883b0 --- /dev/null +++ b/libs/python/test/slice.py @@ -0,0 +1,72 @@ +# Copyright David Abrahams 2004. Distributed under the Boost +# Software License, Version 1.0. (See accompanying +# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +""" +>>> from slice_ext import * +>>> accept_slice(slice(1, None, (1,2))) +1 +>>> try: +... accept_slice(list((1,2))) +... print "test failed" +... except: +... print "test passed" +... +test passed +>>> try: +... from Numeric import array +... except: +... print 1 +... else: +... check_numeric_array_rich_slice('Numeric', 'ArrayType', lambda x:x) +... +1 +>>> try: +... from numarray import array, all +... except: +... print 1 +... else: +... check_numeric_array_rich_slice('numarray', 'NDArray', all) +... +1 +>>> import sys +>>> if sys.version_info[0] == 2 and sys.version_info[1] >= 3: +... check_string_rich_slice() +... elif sys.version_info[0] > 2: +... check_string_rich_slice() +... else: +... print 1 +... +1 +>>> check_slice_get_indices( slice(None)) +0 +>>> check_slice_get_indices( slice(2,-2)) +0 +>>> check_slice_get_indices( slice(2, None, 2)) +5 +>>> check_slice_get_indices( slice(2, None, -1)) +-12 +>>> check_slice_get_indices( slice( 20, None)) +0 +>>> check_slice_get_indices( slice( -2, -5, -2)) +6 +""" + +# Performs an affirmative and negative argument resolution check, +# checks the operation of extended slicing in Numeric arrays +# (only performed if Numeric.array or numarray.array can be found). +# checks the operation of extended slicing in new strings (Python 2.3 only). + +def run(args = None): + import sys + import doctest + + if args is not None: + sys.argv = args + return doctest.testmod(sys.modules.get(__name__)) + +if __name__ == '__main__': + print "running..." + import sys + status = run()[0] + if (status == 0): print "Done." + sys.exit(status) |