~malept/ubuntu/lucid/python2.6/dev-dependency-fix

« back to all changes in this revision

Viewing changes to Lib/test/test_bigaddrspace.py

  • Committer: Bazaar Package Importer
  • Author(s): Matthias Klose
  • Date: 2009-02-13 12:51:00 UTC
  • Revision ID: james.westby@ubuntu.com-20090213125100-uufgcb9yeqzujpqw
Tags: upstream-2.6.1
ImportĀ upstreamĀ versionĀ 2.6.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
from test import test_support
 
2
from test.test_support import bigaddrspacetest, MAX_Py_ssize_t
 
3
 
 
4
import unittest
 
5
import operator
 
6
import sys
 
7
 
 
8
 
 
9
class StrTest(unittest.TestCase):
 
10
 
 
11
    @bigaddrspacetest
 
12
    def test_concat(self):
 
13
        s1 = 'x' * MAX_Py_ssize_t
 
14
        self.assertRaises(OverflowError, operator.add, s1, '?')
 
15
 
 
16
    @bigaddrspacetest
 
17
    def test_optimized_concat(self):
 
18
        x = 'x' * MAX_Py_ssize_t
 
19
        try:
 
20
            x = x + '?'     # this statement uses a fast path in ceval.c
 
21
        except OverflowError:
 
22
            pass
 
23
        else:
 
24
            self.fail("should have raised OverflowError")
 
25
        try:
 
26
            x += '?'        # this statement uses a fast path in ceval.c
 
27
        except OverflowError:
 
28
            pass
 
29
        else:
 
30
            self.fail("should have raised OverflowError")
 
31
        self.assertEquals(len(x), MAX_Py_ssize_t)
 
32
 
 
33
    ### the following test is pending a patch
 
34
    #   (http://mail.python.org/pipermail/python-dev/2006-July/067774.html)
 
35
    #@bigaddrspacetest
 
36
    #def test_repeat(self):
 
37
    #    self.assertRaises(OverflowError, operator.mul, 'x', MAX_Py_ssize_t + 1)
 
38
 
 
39
 
 
40
def test_main():
 
41
    test_support.run_unittest(StrTest)
 
42
 
 
43
if __name__ == '__main__':
 
44
    if len(sys.argv) > 1:
 
45
        test_support.set_memlimit(sys.argv[1])
 
46
    test_main()