diff --git a/test/test_sfg.py b/test/test_sfg.py index b2e68fe56e4aa1640a087eebbe7d85e7069adf77..af9dfe179751fd620d5880494215c3b1cfb8571b 100644 --- a/test/test_sfg.py +++ b/test/test_sfg.py @@ -20,7 +20,7 @@ class TestConstructor: add1 = Addition(None, None, "ADD1") add2 = Addition(None, None, "ADD2") - sig1 = add2.input(0).connect(add1) + sig1 = add2.input(0).connect(add1, "S1") sfg = SFG(input_signals=[sig1], output_signals=[sig1]) @@ -88,3 +88,29 @@ class TestDeepCopy: for g_id, component in mac_sfg._components_by_id.items(): component_copy = mac_sfg_deep_copy.find_by_id(g_id) assert component.name == component_copy.name + + +class TestComponents: + + def test_advanced_components(self): + inp1 = Input("INP1") + inp2 = Input("INP2") + inp3 = Input("INP3") + add1 = Addition(None, None, "ADD1") + add2 = Addition(None, None, "ADD2") + mul1 = Multiplication(None, None, "MUL1") + out1 = Output(None, "OUT1") + + add1.input(0).connect(inp1, "S1") + add1.input(1).connect(inp2, "S2") + add2.input(0).connect(add1, "S4") + add2.input(1).connect(inp3, "S3") + mul1.input(0).connect(add1, "S5") + mul1.input(1).connect(add2, "S6") + out1.input(0).connect(mul1, "S7") + + mac_sfg = SFG(inputs=[inp1, inp2], + outputs=[out1], name="mac_sfg") + + assert set([comp.name for comp in mac_sfg.components]) == { + "INP1", "INP2", "INP3", "ADD1", "ADD2", "MUL1", "OUT1", "S1", "S2", "S3", "S4", "S5", "S6", "S7"}