summaryrefslogtreecommitdiff
path: root/gr-blocks/python
diff options
context:
space:
mode:
authorMarcus Müller <marcus.mueller@ettus.com>2015-12-09 20:32:57 +0100
committerJohnathan Corgan <johnathan@corganlabs.com>2015-12-27 13:14:35 -0800
commit0f05763e969abcc7aa2bbd0bbb22d2547812b53e (patch)
tree3b199e0c0826f6eab61f0fca7f2da7ef29cde61f /gr-blocks/python
parentae2e24f86b562a5bdcb9f5170e0abb1cd15838cf (diff)
added unit test for tag forwarding to delay
… should honestly be a runtime QA check, but can't check in runtime without depending on blocks, so using this place as it is functionally important for the delay block.
Diffstat (limited to 'gr-blocks/python')
-rwxr-xr-xgr-blocks/python/blocks/qa_delay.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/gr-blocks/python/blocks/qa_delay.py b/gr-blocks/python/blocks/qa_delay.py
index a0853309b3..09200862bd 100755
--- a/gr-blocks/python/blocks/qa_delay.py
+++ b/gr-blocks/python/blocks/qa_delay.py
@@ -21,6 +21,7 @@
#
from gnuradio import gr, gr_unittest, blocks
+import pmt
class test_delay(gr_unittest.TestCase):
@@ -60,5 +61,27 @@ class test_delay(gr_unittest.TestCase):
dst_data = dst.data()
self.assertEqual(expected_result, dst_data)
+ def test_020(self):
+ tb = self.tb
+ vector_sink = blocks.vector_sink_f(1)
+ ref_sink = blocks.vector_sink_f(1)
+ tags_strobe = blocks.tags_strobe(gr.sizeof_float*1, pmt.intern("TEST"), 100, pmt.intern("strobe"))
+ head = blocks.head(gr.sizeof_float*1, 10**5)
+ delay = blocks.delay(gr.sizeof_float*1, 100)
+ tb.connect((delay, 0), (head, 0))
+ tb.connect((head, 0), (vector_sink, 0))
+ tb.connect((tags_strobe, 0), (delay, 0))
+ tb.connect((tags_strobe, 0), (ref_sink, 0))
+ tb.run()
+
+ tags = vector_sink.tags()
+ self.assertNotEqual(len(tags), 0)
+ lastoffset = tags[0].offset - 100
+ for tag in tags:
+ newoffset = tag.offset
+ self.assertEqual(newoffset, lastoffset + 100)
+ lastoffset = newoffset
+
+
if __name__ == '__main__':
gr_unittest.run(test_delay, "test_delay.xml")