mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
Issue #5109: array.array constructor will now use fast code when
initial data is provided in an array object with correct type.
This commit is contained in:
parent
cf8a382c94
commit
ef4a03fffe
3 changed files with 28 additions and 5 deletions
|
@ -398,6 +398,11 @@ class BaseTest(unittest.TestCase):
|
|||
if a.itemsize>1:
|
||||
self.assertRaises(ValueError, b.frombytes, b"x")
|
||||
|
||||
def test_fromarray(self):
|
||||
a = array.array(self.typecode, self.example)
|
||||
b = array.array(self.typecode, a)
|
||||
self.assertEqual(a, b)
|
||||
|
||||
def test_repr(self):
|
||||
a = array.array(self.typecode, 2*self.example)
|
||||
self.assertEqual(a, eval(repr(a), {"array": array.array}))
|
||||
|
@ -1113,6 +1118,11 @@ class NumberTest(BaseTest):
|
|||
|
||||
self.assertRaises(AttributeError, setattr, a, "color", "blue")
|
||||
|
||||
def test_frombytearray(self):
|
||||
a = array.array('b', range(10))
|
||||
b = array.array(self.typecode, a)
|
||||
self.assertEqual(a, b)
|
||||
|
||||
class SignedNumberTest(NumberTest):
|
||||
example = [-1, 0, 1, 42, 0x7f]
|
||||
smallerexample = [-1, 0, 1, 42, 0x7e]
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue