Skip to content
Snippets Groups Projects
test_outputport.py 1.11 KiB
Newer Older
  • Learn to ignore specific revisions
  • from b_asic import InputPort, OutputPort
    
    @pytest.fixture
    def inp_ports():
        return [InputPort(_, None) for _ in range(0,3)]
    
    def test_connect_multiple_signals(inp_ports):
        """Can multiple ports connect to an output port?"""
        out_port = OutputPort(0, None)
    
        assert out_port.signal_count() == len(inp_ports)
    
    def test_disconnect_multiple_signals(inp_ports):
    
        """Can multiple signals disconnect from an output port?"""
        out_port = OutputPort(0, None)
    
        sigs = []
    
        for port in inp_ports:
            sigs.append(out_port.connect(port))
    
        for sig in sigs:
            out_port.remove_signal(sig)
    
        assert out_port.signal_count() == 0
    
    def test_disconnect_mulitple_ports(inp_ports):
        """Can multiple ports be disconnected from an output port?"""
    
        out_port = OutputPort(0, None)
    
        for port in inp_ports:
    
            out_port.connect(port)
    
        for port in inp_ports:
            out_port.disconnect(port)
    
        assert out_port.signal_count() == 3
        assert len(out_port.connected_ports) == 0