github.com/jshiv/can-go@v0.2.1-0.20210224011015-069e90e90bdf/pkg/descriptor/message_test.go (about)

     1  package descriptor
     2  
     3  import (
     4  	"testing"
     5  
     6  	"gotest.tools/v3/assert"
     7  	is "gotest.tools/v3/assert/cmp"
     8  )
     9  
    10  func TestMessage_MultiplexerSignal(t *testing.T) {
    11  	mux := &Signal{
    12  		Name:          "Mux",
    13  		IsMultiplexer: true,
    14  	}
    15  	m := &Message{
    16  		Signals: []*Signal{
    17  			{Name: "NotMux"},
    18  			mux,
    19  			{Name: "AlsoNotMux"},
    20  		},
    21  	}
    22  	actualMux, ok := m.MultiplexerSignal()
    23  	assert.Assert(t, ok)
    24  	assert.DeepEqual(t, mux, actualMux)
    25  }
    26  
    27  func TestMessage_MultiplexerSignal_NotFound(t *testing.T) {
    28  	m := &Message{
    29  		Signals: []*Signal{
    30  			{Name: "NotMux"},
    31  			{Name: "AlsoNotMux"},
    32  		},
    33  	}
    34  	actualMux, ok := m.MultiplexerSignal()
    35  	assert.Assert(t, !ok)
    36  	assert.Assert(t, is.Nil(actualMux))
    37  }