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