From 3ce39f391866713e7c1f16f9fc390ed0f4728fd0 Mon Sep 17 00:00:00 2001 From: Roman Zeyde Date: Sun, 24 Aug 2014 18:57:07 +0300 Subject: [PATCH] test calib.py --- amodem/calib.py | 6 +----- tests/test_calib.py | 19 ++++++++++++++++++- 2 files changed, 19 insertions(+), 6 deletions(-) diff --git a/amodem/calib.py b/amodem/calib.py index 57b9c87..7881283 100644 --- a/amodem/calib.py +++ b/amodem/calib.py @@ -32,11 +32,7 @@ def recv(wave_record=wave.record, reporter=sys.stdout.write): data = p.stdout.read(len(sig_dump)) if len(data) < len(sig_dump): return - try: - x = common.loads(data) - except common.SaturationError as e: - print('saturation: {}'.format(e)) - continue + x = common.loads(data) x = x - np.mean(x) normalization_factor = np.sqrt(0.5 * len(x)) * dsp.norm(x) diff --git a/tests/test_calib.py b/tests/test_calib.py index 308833e..ebd6126 100644 --- a/tests/test_calib.py +++ b/tests/test_calib.py @@ -1,6 +1,7 @@ -from amodem import calib +from amodem import calib, config, common from io import BytesIO +import numpy as np class ProcessMock(object): @@ -33,3 +34,19 @@ def test(): calib.send(p) p.buf.seek(0) calib.recv(p, reporter=verify) + + +def test_errors(): + p = ProcessMock() + + def _write(data): + raise IOError() + p.write = _write + calib.send(p) + assert p.buf.tell() == 0 + + def _read(data): + raise KeyboardInterrupt() + p.read = _read + calib.recv(p) + assert p.buf.tell() == 0