from __future__ import annotations import unittest from app.simulation.components.amesim.junctions.nodes import ( AmesimP4Node2, AmesimPn3Node2, ) from app.simulation.core.medium import IdealGasMedium class AmesimPneumaticNodeComponentTests(unittest.TestCase): def test_pn3node2_declares_bidirectional_pneumatic_ports(self) -> None: node = AmesimPn3Node2.create( name="pn3_1", medium=IdealGasMedium(), parameters={}, ) self.assertEqual(set(node.ports), {"port_1", "port_2", "port_3"}) self.assertTrue( all( definition.domain == "pneumatic" and definition.nominal_role == "bidirectional" for definition in node.port_definitions ) ) self.assertEqual(node.parameter_values, {}) if __name__ == "__main__": unittest.main()