diff options
author | Johnathan Corgan <johnathan@corganlabs.com> | 2017-05-15 08:10:46 -0700 |
---|---|---|
committer | Johnathan Corgan <johnathan@corganlabs.com> | 2017-05-15 08:10:46 -0700 |
commit | 29cae2f58f1a97e5bbccaf4184a5bba6aeae024d (patch) | |
tree | e3c2d4a61f08678623080a2bad3599ee3b7afd88 /gr-blocks/python | |
parent | ef139ce3f10e181edfafafcc08ae26cec54221ed (diff) | |
parent | cef83399851889e36ef673a36c2f59f1cef1cd68 (diff) |
Merge branch 'next' into python3
Diffstat (limited to 'gr-blocks/python')
-rw-r--r-- | gr-blocks/python/blocks/qa_file_source_sink.py | 79 |
1 files changed, 38 insertions, 41 deletions
diff --git a/gr-blocks/python/blocks/qa_file_source_sink.py b/gr-blocks/python/blocks/qa_file_source_sink.py index 2bc96afdc2..30c7708a3c 100644 --- a/gr-blocks/python/blocks/qa_file_source_sink.py +++ b/gr-blocks/python/blocks/qa_file_source_sink.py @@ -23,6 +23,7 @@ from gnuradio import gr, gr_unittest, blocks import os +import tempfile class test_file_source_sink(gr_unittest.TestCase): @@ -37,22 +38,21 @@ class test_file_source_sink(gr_unittest.TestCase): src_data = list(range(1000)) expected_result = list(range(1000)) - filename = "tmp.32f" - src = blocks.vector_source_f(src_data) - snk = blocks.file_sink(gr.sizeof_float, filename) - snk.set_unbuffered(True) - - src2 = blocks.file_source(gr.sizeof_float, filename) snk2 = blocks.vector_sink_f() - self.tb.connect(src, snk) - self.tb.run() + with tempfile.NamedTemporaryFile() as temp: + src = blocks.vector_source_f(src_data) + snk = blocks.file_sink(gr.sizeof_float, temp.name) + snk.set_unbuffered(True) + + src2 = blocks.file_source(gr.sizeof_float, temp.name) - self.tb.disconnect(src, snk) - self.tb.connect(src2, snk2) - self.tb.run() + self.tb.connect(src, snk) + self.tb.run() - os.remove(filename) + self.tb.disconnect(src, snk) + self.tb.connect(src2, snk2) + self.tb.run() result_data = snk2.data() self.assertFloatTuplesAlmostEqual(expected_result, result_data) @@ -61,30 +61,29 @@ class test_file_source_sink(gr_unittest.TestCase): src_data = list(range(1000)) expected_result = list(range(1000)) - filename = "tmp.32f" - fhandle0 = open(filename, "wb") - fd0 = fhandle0.fileno() + snk2 = blocks.vector_sink_f() - src = blocks.vector_source_f(src_data) - snk = blocks.file_descriptor_sink(gr.sizeof_float, fd0) + with tempfile.NamedTemporaryFile() as temp: + fhandle0 = open(temp.name, "wb") + fd0 = fhandle0.fileno() - self.tb.connect(src, snk) - self.tb.run() - os.fsync(fd0) - fhandle0.close() + src = blocks.vector_source_f(src_data) + snk = blocks.file_descriptor_sink(gr.sizeof_float, fd0) - fhandle1 = open(filename, "rb") - fd1 = fhandle1.fileno() - src2 = blocks.file_descriptor_source(gr.sizeof_float, fd1, False) - snk2 = blocks.vector_sink_f() + self.tb.connect(src, snk) + self.tb.run() + os.fsync(fd0) + fhandle0.close() - self.tb.disconnect(src, snk) - self.tb.connect(src2, snk2) - self.tb.run() - os.fsync(fd1) - fhandle1.close() + fhandle1 = open(temp.name, "rb") + fd1 = fhandle1.fileno() + src2 = blocks.file_descriptor_source(gr.sizeof_float, fd1, False) - os.remove(filename) + self.tb.disconnect(src, snk) + self.tb.connect(src2, snk2) + self.tb.run() + os.fsync(fd1) + fhandle1.close() result_data = snk2.data() self.assertFloatTuplesAlmostEqual(expected_result, result_data) @@ -92,18 +91,16 @@ class test_file_source_sink(gr_unittest.TestCase): def test_file_source_can_seek_after_open(self): src_data = list(range(1000)) - filename = "tmp.32f" - src = blocks.vector_source_f(src_data) - snk = blocks.file_sink(gr.sizeof_float, filename) - snk.set_unbuffered(True) - - self.tb.connect(src, snk) - self.tb.run() + with tempfile.NamedTemporaryFile() as temp: + src = blocks.vector_source_f(src_data) + snk = blocks.file_sink(gr.sizeof_float, temp.name) + snk.set_unbuffered(True) - source = blocks.file_source(gr.sizeof_float, filename) - self.assertTrue(source.seek(0, os.SEEK_SET)) + self.tb.connect(src, snk) + self.tb.run() - os.remove(filename) + source = blocks.file_source(gr.sizeof_float, temp.name) + self.assertTrue(source.seek(0, os.SEEK_SET)) if __name__ == '__main__': gr_unittest.run(test_file_source_sink, "test_file_source_sink.xml") |