diff options
Diffstat (limited to 'gr-blocks/python')
-rw-r--r-- | gr-blocks/python/blocks/qa_file_metadata.py | 2 | ||||
-rwxr-xr-x | gr-blocks/python/blocks/qa_tag_gate.py | 75 |
2 files changed, 77 insertions, 0 deletions
diff --git a/gr-blocks/python/blocks/qa_file_metadata.py b/gr-blocks/python/blocks/qa_file_metadata.py index 0d7628bbdc..886207f108 100644 --- a/gr-blocks/python/blocks/qa_file_metadata.py +++ b/gr-blocks/python/blocks/qa_file_metadata.py @@ -106,6 +106,7 @@ class test_file_metadata(gr_unittest.TestCase): self.tb.connect(src, ssnk) self.tb.run() + fsrc.close() # Test to make sure tags with 'samp_rate' and 'rx_rate' keys # were generated and received correctly. tags = tsnk.current_tags() @@ -187,6 +188,7 @@ class test_file_metadata(gr_unittest.TestCase): self.tb.connect(src, ssnk) self.tb.run() + fsrc.close() # Test to make sure tags with 'samp_rate' and 'rx_rate' keys # were generated and received correctly. tags = tsnk.current_tags() diff --git a/gr-blocks/python/blocks/qa_tag_gate.py b/gr-blocks/python/blocks/qa_tag_gate.py index acb2c68a82..7ae676562e 100755 --- a/gr-blocks/python/blocks/qa_tag_gate.py +++ b/gr-blocks/python/blocks/qa_tag_gate.py @@ -40,9 +40,84 @@ class qa_tag_gate (gr_unittest.TestCase): src = blocks.vector_source_f(range(20), False, 1, (tag,)) gate = blocks.tag_gate(gr.sizeof_float, False) sink = blocks.vector_sink_f() + self.tb.connect(src, gate, sink) self.tb.run () self.assertEqual(len(sink.tags()), 0) + def test_002_t (self): + tags = [] + tags.append(gr.tag_t()) + tags[0].key = pmt.string_to_symbol('key') + tags[0].value = pmt.from_long(42) + tags[0].offset = 0 + tags.append(gr.tag_t()) + tags[1].key = pmt.string_to_symbol('key') + tags[1].value = pmt.from_long(42) + tags[1].offset = 5 + tags.append(gr.tag_t()) + tags[2].key = pmt.string_to_symbol('secondkey') + tags[2].value = pmt.from_long(42) + tags[2].offset = 6 + src = blocks.vector_source_f(range(20), False, 1, tags) + gate = blocks.tag_gate(gr.sizeof_float, False) + gate.set_single_key("key") + self.assertEqual(gate.single_key(),"key") + sink = blocks.vector_sink_f() + self.tb.connect(src, gate, sink) + self.tb.run () + self.assertEqual(len(sink.tags()), 1) + + def test_003_t (self): + tags = [] + tags.append(gr.tag_t()) + tags[0].key = pmt.string_to_symbol('key') + tags[0].value = pmt.from_long(42) + tags[0].offset = 0 + tags.append(gr.tag_t()) + tags[1].key = pmt.string_to_symbol('key') + tags[1].value = pmt.from_long(42) + tags[1].offset = 5 + tags.append(gr.tag_t()) + tags[2].key = pmt.string_to_symbol('secondkey') + tags[2].value = pmt.from_long(42) + tags[2].offset = 6 + src = blocks.vector_source_f(range(20), False, 1, tags) + gate = blocks.tag_gate(gr.sizeof_float, True) + gate.set_single_key("key") + sink = blocks.vector_sink_f() + self.tb.connect(src, gate, sink) + self.tb.run () + self.assertEqual(len(sink.tags()), 3) + + def test_004_t (self): + tags = [] + tags.append(gr.tag_t()) + tags[0].key = pmt.string_to_symbol('key') + tags[0].value = pmt.from_long(42) + tags[0].offset = 0 + tags.append(gr.tag_t()) + tags[1].key = pmt.string_to_symbol('key') + tags[1].value = pmt.from_long(42) + tags[1].offset = 5 + tags.append(gr.tag_t()) + tags[2].key = pmt.string_to_symbol('secondkey') + tags[2].value = pmt.from_long(42) + tags[2].offset = 6 + src = blocks.vector_source_f(range(20), False, 1, tags) + gate = blocks.tag_gate(gr.sizeof_float, True) + sink = blocks.vector_sink_f() + self.tb.connect(src, gate, sink) + self.tb.run () + self.assertEqual(len(sink.tags()), 3) + + def test_005_t (self): + gate = blocks.tag_gate(gr.sizeof_float, True) + self.assertEqual(gate.single_key(), "") + gate.set_single_key("the_key") + self.assertEqual(gate.single_key(), "the_key") + gate.set_single_key("") + self.assertEqual(gate.single_key(), "") + if __name__ == '__main__': gr_unittest.run(qa_tag_gate, "qa_tag_gate.xml") |