QA_test 用于不同类型的 gnuradio 上的多个输出

QA_test for multiple outputs on gnuradio with different types

我写了一个有 1 个输入和 2 个输出的 gnuradio 块。现在我在 python 中写 qa_test。下面的代码用于测试具有 1 个输入和 1 个输出的块。 我如何调整代码以测试不同类型的两个输出(复数和浮点数)

src_data = (0, 1, -2, 5.5, -0.5)
expected_result = (0, 2, -4, 11, -1)
src = blocks.vector_source_f (src_data)
mult = multiply_py_ff (2)
snk = blocks.vector_sink_f ()
self.tb.connect (src, mult)
self.tb.connect (mult, snk)
self.tb.run ()
result_data = snk.data ()
self.assertFloatTuplesAlmostEqual (expected_result, result_data, 6)

How can I adapt the code to test two outputs of different types (complex and float)

尝试创建两个接收器块 - 一个 vector_sink_f 和一个 vector_sink_c,然后通过指定 src_port 和 [,使用连接函数将被测块的相应输出连接到它们=12=]。参见 https://www.gnuradio.org/doc/doxygen/classgr_1_1hier__block2.html#a915d1d5b4b6d8a9db4211d9a4507c955

应该是这样的

tb.connect((block,0), (snk1,0))
tb.connect((block,1), (snk2,0))

来自 pfb_channelizer 测试的示例