changeset: 74765:05b40b006565 parent: 74762:204e40fa250d parent: 74764:cfbd800af3a4 user: Antoine Pitrou date: Sat Feb 04 16:49:31 2012 +0100 description: Fix failing test on big-endian machines (issue #13806). diff -r 204e40fa250d -r 05b40b006565 Lib/test/test_audioop.py --- a/Lib/test/test_audioop.py Sat Feb 04 09:56:43 2012 -0500 +++ b/Lib/test/test_audioop.py Sat Feb 04 16:49:31 2012 +0100 @@ -2,18 +2,19 @@ import unittest from test.support import run_unittest +endian = 'big' if audioop.getsample(b'0円1円', 2, 0) == 1 else 'little' def gendata1(): return b'0円1円2円' def gendata2(): - if audioop.getsample(b'0円1円', 2, 0) == 1: + if endian == 'big': return b'0円0円0円1円0円2円' else: return b'0円0円1円0円2円0円' def gendata4(): - if audioop.getsample(b'0円0円0円1円', 4, 0) == 1: + if endian == 'big': return b'0円0円0円0円0円0円0円1円0円0円0円2円' else: return b'0円0円0円0円1円0円0円0円2円0円0円0円' @@ -111,9 +112,16 @@ # Cursory d = audioop.lin2alaw(data[0], 1) self.assertEqual(audioop.alaw2lin(d, 1), data[0]) - self.assertEqual(audioop.alaw2lin(d, 2), b'\x08\x00\x08\x01\x10\x02') - self.assertEqual(audioop.alaw2lin(d, 4), - b'\x00\x00\x08\x00\x00\x00\x08\x01\x00\x00\x10\x02') + if endian == 'big': + self.assertEqual(audioop.alaw2lin(d, 2), + b'\x00\x08\x01\x08\x02\x10') + self.assertEqual(audioop.alaw2lin(d, 4), + b'\x00\x08\x00\x00\x01\x08\x00\x00\x02\x10\x00\x00') + else: + self.assertEqual(audioop.alaw2lin(d, 2), + b'\x08\x00\x08\x01\x10\x02') + self.assertEqual(audioop.alaw2lin(d, 4), + b'\x00\x00\x08\x00\x00\x00\x08\x01\x00\x00\x10\x02') def test_lin2ulaw(self): self.assertEqual(audioop.lin2ulaw(data[0], 1), b'\xff\xe7\xdb') @@ -124,9 +132,16 @@ # Cursory d = audioop.lin2ulaw(data[0], 1) self.assertEqual(audioop.ulaw2lin(d, 1), data[0]) - self.assertEqual(audioop.ulaw2lin(d, 2), b'\x00\x00\x04\x01\x0c\x02') - self.assertEqual(audioop.ulaw2lin(d, 4), - b'\x00\x00\x00\x00\x00\x00\x04\x01\x00\x00\x0c\x02') + if endian == 'big': + self.assertEqual(audioop.ulaw2lin(d, 2), + b'\x00\x00\x01\x04\x02\x0c') + self.assertEqual(audioop.ulaw2lin(d, 4), + b'\x00\x00\x00\x00\x01\x04\x00\x00\x02\x0c\x00\x00') + else: + self.assertEqual(audioop.ulaw2lin(d, 2), + b'\x00\x00\x04\x01\x0c\x02') + self.assertEqual(audioop.ulaw2lin(d, 4), + b'\x00\x00\x00\x00\x00\x00\x04\x01\x00\x00\x0c\x02') def test_mul(self): data2 = []

AltStyle によって変換されたページ (->オリジナル) /