[Python-checkins] cpython (merge 3.2 -> default): merge with 3.2

sandro.tosi python-checkins at python.org
Sun Jan 1 18:06:04 CET 2012


http://hg.python.org/cpython/rev/93c5908bf89b
changeset: 74225:93c5908bf89b
parent: 74223:3cc47ed7a291
parent: 74224:a9cdc3ff2b8e
user: Sandro Tosi <sandro.tosi at gmail.com>
date: Sun Jan 01 18:05:06 2012 +0100
summary:
 merge with 3.2
files:
 Lib/aifc.py | 12 ++----------
 Lib/test/test_aifc.py | 11 +++++++++++
 2 files changed, 13 insertions(+), 10 deletions(-)
diff --git a/Lib/aifc.py b/Lib/aifc.py
--- a/Lib/aifc.py
+++ b/Lib/aifc.py
@@ -716,18 +716,12 @@
 
 def _ensure_header_written(self, datasize):
 if not self._nframeswritten:
- if self._comptype in (b'ULAW', b'ALAW'):
+ if self._comptype in (b'ULAW', b'ulaw', b'ALAW', b'alaw', b'G722'):
 if not self._sampwidth:
 self._sampwidth = 2
 if self._sampwidth != 2:
 raise Error('sample width must be 2 when compressing '
- 'with ulaw/ULAW or alaw/ALAW')
- if self._comptype == b'G722':
- if not self._sampwidth:
- self._sampwidth = 2
- if self._sampwidth != 2:
- raise Error('sample width must be 2 when compressing '
- 'with G7.22 (ADPCM)')
+ 'with ulaw/ULAW, alaw/ALAW or G7.22 (ADPCM)')
 if not self._nchannels:
 raise Error('# channels not specified')
 if not self._sampwidth:
@@ -743,8 +737,6 @@
 self._convert = self._lin2ulaw
 elif self._comptype in (b'alaw', b'ALAW'):
 self._convert = self._lin2alaw
- else:
- raise Error('unsupported compression type')
 
 def _write_header(self, initlength):
 if self._aifc and self._comptype != b'NONE':
diff --git a/Lib/test/test_aifc.py b/Lib/test/test_aifc.py
--- a/Lib/test/test_aifc.py
+++ b/Lib/test/test_aifc.py
@@ -1,6 +1,7 @@
 from test.support import findfile, run_unittest, TESTFN
 import unittest
 import os
+import io
 
 import aifc
 
@@ -109,6 +110,16 @@
 f.close()
 self.assertEqual(testfile.closed, True)
 
+ def test_write_header_comptype_sampwidth(self):
+ for comptype in (b'ULAW', b'ulaw', b'ALAW', b'alaw', b'G722'):
+ fout = self.fout = aifc.open(io.BytesIO(), 'wb')
+ fout.setnchannels(1)
+ fout.setframerate(1)
+ fout.setcomptype(comptype, b'')
+ fout.close()
+ self.assertEqual(fout.getsampwidth(), 2)
+ fout.initfp(None)
+
 
 def test_main():
 run_unittest(AIFCTest)
-- 
Repository URL: http://hg.python.org/cpython


More information about the Python-checkins mailing list

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