Ignore:
Timestamp:
Mar 19, 2014, 11:31:01 PM (11 years ago)
Author:
dmik
Message:

python: Merge vendor 2.7.6 to trunk.

Location:
python/trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • python/trunk

  • python/trunk/Lib/test/test_array.py

    r2 r391  
    55
    66import unittest
     7import warnings
    78from test import test_support
    89from weakref import proxy
     
    1516class ArraySubclassWithKwargs(array.array):
    1617    def __init__(self, typecode, newarg=None):
    17         array.array.__init__(typecode)
     18        array.array.__init__(self, typecode)
    1819
    1920tests = [] # list to accumulate all tests
     
    4950        a = array.array(self.typecode)
    5051        self.assertEqual(a.typecode, self.typecode)
    51         self.assert_(a.itemsize>=self.minitemsize)
     52        self.assertTrue(a.itemsize>=self.minitemsize)
    5253        self.assertRaises(TypeError, array.array, self.typecode, None)
    5354
     
    6465        self.assertRaises(TypeError, a.buffer_info, 42)
    6566        bi = a.buffer_info()
    66         self.assert_(isinstance(bi, tuple))
     67        self.assertIsInstance(bi, tuple)
    6768        self.assertEqual(len(bi), 2)
    68         self.assert_(isinstance(bi[0], (int, long)))
    69         self.assert_(isinstance(bi[1], int))
     69        self.assertIsInstance(bi[0], (int, long))
     70        self.assertIsInstance(bi[1], int)
    7071        self.assertEqual(bi[1], len(a))
    7172
     
    189190            test_support.unlink(test_support.TESTFN)
    190191
     192    def test_fromfile_ioerror(self):
     193        # Issue #5395: Check if fromfile raises a proper IOError
     194        # instead of EOFError.
     195        a = array.array(self.typecode)
     196        f = open(test_support.TESTFN, 'wb')
     197        try:
     198            self.assertRaises(IOError, a.fromfile, f, len(self.example))
     199        finally:
     200            f.close()
     201            test_support.unlink(test_support.TESTFN)
     202
     203    def test_filewrite(self):
     204        a = array.array(self.typecode, 2*self.example)
     205        f = open(test_support.TESTFN, 'wb')
     206        try:
     207            f.write(a)
     208            f.close()
     209            b = array.array(self.typecode)
     210            f = open(test_support.TESTFN, 'rb')
     211            b.fromfile(f, len(self.example))
     212            self.assertEqual(b, array.array(self.typecode, self.example))
     213            self.assertNotEqual(a, b)
     214            b.fromfile(f, len(self.example))
     215            self.assertEqual(a, b)
     216            f.close()
     217        finally:
     218            if not f.closed:
     219                f.close()
     220            test_support.unlink(test_support.TESTFN)
     221
    191222    def test_tofromlist(self):
    192223        a = array.array(self.typecode, 2*self.example)
     
    223254    def test_cmp(self):
    224255        a = array.array(self.typecode, self.example)
    225         self.assert_((a == 42) is False)
    226         self.assert_((a != 42) is True)
    227 
    228         self.assert_((a == a) is True)
    229         self.assert_((a != a) is False)
    230         self.assert_((a < a) is False)
    231         self.assert_((a <= a) is True)
    232         self.assert_((a > a) is False)
    233         self.assert_((a >= a) is True)
     256        self.assertTrue((a == 42) is False)
     257        self.assertTrue((a != 42) is True)
     258
     259        self.assertTrue((a == a) is True)
     260        self.assertTrue((a != a) is False)
     261        self.assertTrue((a < a) is False)
     262        self.assertTrue((a <= a) is True)
     263        self.assertTrue((a > a) is False)
     264        self.assertTrue((a >= a) is True)
    234265
    235266        al = array.array(self.typecode, self.smallerexample)
    236267        ab = array.array(self.typecode, self.biggerexample)
    237268
    238         self.assert_((a == 2*a) is False)
    239         self.assert_((a != 2*a) is True)
    240         self.assert_((a < 2*a) is True)
    241         self.assert_((a <= 2*a) is True)
    242         self.assert_((a > 2*a) is False)
    243         self.assert_((a >= 2*a) is False)
    244 
    245         self.assert_((a == al) is False)
    246         self.assert_((a != al) is True)
    247         self.assert_((a < al) is False)
    248         self.assert_((a <= al) is False)
    249         self.assert_((a > al) is True)
    250         self.assert_((a >= al) is True)
    251 
    252         self.assert_((a == ab) is False)
    253         self.assert_((a != ab) is True)
    254         self.assert_((a < ab) is True)
    255         self.assert_((a <= ab) is True)
    256         self.assert_((a > ab) is False)
    257         self.assert_((a >= ab) is False)
     269        self.assertTrue((a == 2*a) is False)
     270        self.assertTrue((a != 2*a) is True)
     271        self.assertTrue((a < 2*a) is True)
     272        self.assertTrue((a <= 2*a) is True)
     273        self.assertTrue((a > 2*a) is False)
     274        self.assertTrue((a >= 2*a) is False)
     275
     276        self.assertTrue((a == al) is False)
     277        self.assertTrue((a != al) is True)
     278        self.assertTrue((a < al) is False)
     279        self.assertTrue((a <= al) is False)
     280        self.assertTrue((a > al) is True)
     281        self.assertTrue((a >= al) is True)
     282
     283        self.assertTrue((a == ab) is False)
     284        self.assertTrue((a != ab) is True)
     285        self.assertTrue((a < ab) is True)
     286        self.assertTrue((a <= ab) is True)
     287        self.assertTrue((a > ab) is False)
     288        self.assertTrue((a >= ab) is False)
    258289
    259290    def test_add(self):
     
    274305        b = a
    275306        a += array.array(self.typecode, 2*self.example)
    276         self.assert_(a is b)
     307        self.assertTrue(a is b)
    277308        self.assertEqual(
    278309            a,
    279310            array.array(self.typecode, self.example[::-1]+2*self.example)
     311        )
     312        a = array.array(self.typecode, self.example)
     313        a += a
     314        self.assertEqual(
     315            a,
     316            array.array(self.typecode, self.example + self.example)
    280317        )
    281318
     
    317354
    318355        a *= 5
    319         self.assert_(a is b)
     356        self.assertTrue(a is b)
    320357        self.assertEqual(
    321358            a,
     
    324361
    325362        a *= 0
    326         self.assert_(a is b)
     363        self.assertTrue(a is b)
    327364        self.assertEqual(a, array.array(self.typecode))
    328365
    329366        a *= 1000
    330         self.assert_(a is b)
     367        self.assertTrue(a is b)
    331368        self.assertEqual(a, array.array(self.typecode))
    332369
    333370        a *= -1
    334         self.assert_(a is b)
     371        self.assertTrue(a is b)
    335372        self.assertEqual(a, array.array(self.typecode))
    336373
     
    593630                    L[start:stop:step] = data
    594631                    a[start:stop:step] = array.array(self.typecode, data)
    595                     self.assertEquals(a, array.array(self.typecode, L))
     632                    self.assertEqual(a, array.array(self.typecode, L))
    596633
    597634                    del L[start:stop:step]
    598635                    del a[start:stop:step]
    599                     self.assertEquals(a, array.array(self.typecode, L))
     636                    self.assertEqual(a, array.array(self.typecode, L))
    600637
    601638    def test_index(self):
     
    674711            a,
    675712            array.array(self.typecode, self.example+self.example[::-1])
     713        )
     714
     715        a = array.array(self.typecode, self.example)
     716        a.extend(a)
     717        self.assertEqual(
     718            a,
     719            array.array(self.typecode, self.example+self.example)
    676720        )
    677721
     
    718762    def test_buffer(self):
    719763        a = array.array(self.typecode, self.example)
    720         b = buffer(a)
     764        with test_support.check_py3k_warnings():
     765            b = buffer(a)
    721766        self.assertEqual(b[0], a.tostring()[0])
    722767
     
    740785    def test_subclass_with_kwargs(self):
    741786        # SF bug #1486663 -- this used to erroneously raise a TypeError
    742         ArraySubclassWithKwargs('b', newarg=1)
     787        with warnings.catch_warnings():
     788            warnings.filterwarnings("ignore", '', DeprecationWarning)
     789            ArraySubclassWithKwargs('b', newarg=1)
    743790
    744791
     
    939986        self.check_overflow(lower, upper)
    940987
     988    @test_support.cpython_only
     989    def test_sizeof_with_buffer(self):
     990        a = array.array(self.typecode, self.example)
     991        basesize = test_support.calcvobjsize('4P')
     992        buffer_size = a.buffer_info()[1] * a.itemsize
     993        test_support.check_sizeof(self, a, basesize + buffer_size)
     994
     995    @test_support.cpython_only
     996    def test_sizeof_without_buffer(self):
     997        a = array.array(self.typecode)
     998        basesize = test_support.calcvobjsize('4P')
     999        test_support.check_sizeof(self, a, basesize)
     1000
    9411001
    9421002class ByteTest(SignedNumberTest):
Note: See TracChangeset for help on using the changeset viewer.