kopia lustrzana https://github.com/dnet/pySSTV
extracted method load_pickled_asset
rodzic
81b45e7e4e
commit
5eb8a468e4
|
@ -1,4 +1,9 @@
|
|||
from os import path
|
||||
import pickle
|
||||
|
||||
def get_asset_filename(filename):
|
||||
return path.join(path.dirname(__file__), 'assets', filename)
|
||||
|
||||
def load_pickled_asset(filename):
|
||||
with open(get_asset_filename(filename + '.p'), 'rb') as f:
|
||||
return pickle.load(f)
|
||||
|
|
|
@ -1,11 +1,10 @@
|
|||
import unittest
|
||||
from itertools import islice
|
||||
import pickle
|
||||
|
||||
from PIL import Image
|
||||
|
||||
from pysstv import color
|
||||
from pysstv.tests.common import get_asset_filename
|
||||
from pysstv.tests.common import get_asset_filename, load_pickled_asset
|
||||
|
||||
|
||||
class TestMartinM1(unittest.TestCase):
|
||||
|
@ -17,14 +16,12 @@ class TestMartinM1(unittest.TestCase):
|
|||
self.lena = color.MartinM1(lena, 48000, 16)
|
||||
|
||||
def test_gen_freq_bits(self):
|
||||
with open(get_asset_filename("MartinM1_freq_bits.p"), 'rb') as f:
|
||||
expected = pickle.load(f)
|
||||
expected = load_pickled_asset("MartinM1_freq_bits")
|
||||
actual = list(islice(self.s.gen_freq_bits(), 0, 1000))
|
||||
self.assertEqual(expected, actual)
|
||||
|
||||
def test_gen_freq_bits_lena(self):
|
||||
with open(get_asset_filename("MartinM1_freq_bits_lena.p"), 'rb') as f:
|
||||
expected = pickle.load(f)
|
||||
expected = load_pickled_asset("MartinM1_freq_bits_lena")
|
||||
actual = list(islice(self.lena.gen_freq_bits(), 0, 1000))
|
||||
self.assertEqual(expected, actual)
|
||||
|
||||
|
@ -42,7 +39,6 @@ class TestMartinM1(unittest.TestCase):
|
|||
self.maxDiff = None
|
||||
line_numbers = [1, 10, 100]
|
||||
for line in line_numbers:
|
||||
with open(get_asset_filename("MartinM1_encode_line_lena%d.p" % line), 'rb') as f:
|
||||
expected = pickle.load(f)
|
||||
expected = load_pickled_asset("MartinM1_encode_line_lena{0}".format(line))
|
||||
actual = list(self.lena.encode_line(line))
|
||||
self.assertEqual(expected, actual)
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
import unittest
|
||||
from itertools import islice
|
||||
from six.moves import zip
|
||||
import pickle
|
||||
import mock
|
||||
from mock import MagicMock
|
||||
from six import BytesIO
|
||||
|
@ -10,7 +9,7 @@ import hashlib
|
|||
|
||||
from pysstv import sstv
|
||||
from pysstv.sstv import SSTV
|
||||
from pysstv.tests.common import get_asset_filename
|
||||
from pysstv.tests.common import load_pickled_asset
|
||||
|
||||
|
||||
class TestSSTV(unittest.TestCase):
|
||||
|
@ -47,8 +46,7 @@ class TestSSTV(unittest.TestCase):
|
|||
# FIXME: Instead of using a test fixture, 'expected' should be synthesized?
|
||||
def test_gen_values(self):
|
||||
gen_values = self.s.gen_values()
|
||||
with open(get_asset_filename("SSTV_gen_values.p"), 'rb') as f:
|
||||
expected = pickle.load(f)
|
||||
expected = load_pickled_asset("SSTV_gen_values")
|
||||
for e, g in zip(expected, gen_values):
|
||||
self.assertAlmostEqual(e, g, delta=0.000000001)
|
||||
|
||||
|
@ -60,8 +58,7 @@ class TestSSTV(unittest.TestCase):
|
|||
# and having different results.
|
||||
# https://en.wikipedia.org/wiki/Quantization_%28signal_processing%29
|
||||
sstv.random = MagicMock(return_value=0.4) # xkcd:221
|
||||
with open(get_asset_filename("SSTV_gen_samples.p"), 'rb') as f:
|
||||
expected = pickle.load(f)
|
||||
expected = load_pickled_asset("SSTV_gen_samples")
|
||||
actual = list(islice(gen_values, 0, 1000))
|
||||
for e, a in zip(expected, actual):
|
||||
self.assertAlmostEqual(e, a, delta=1)
|
||||
|
|
Ładowanie…
Reference in New Issue