summaryrefslogtreecommitdiff
path: root/gr-blocks/python
diff options
context:
space:
mode:
authorJohnathan Corgan <johnathan@corganlabs.com>2017-05-15 08:10:46 -0700
committerJohnathan Corgan <johnathan@corganlabs.com>2017-05-15 08:10:46 -0700
commit29cae2f58f1a97e5bbccaf4184a5bba6aeae024d (patch)
treee3c2d4a61f08678623080a2bad3599ee3b7afd88 /gr-blocks/python
parentef139ce3f10e181edfafafcc08ae26cec54221ed (diff)
parentcef83399851889e36ef673a36c2f59f1cef1cd68 (diff)
Merge branch 'next' into python3
Diffstat (limited to 'gr-blocks/python')
-rw-r--r--gr-blocks/python/blocks/qa_file_source_sink.py79
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")