github.com/hechain20/hechain@v0.0.0-20220316014945-b544036ba106/internal/peer/gossip/sa_test.go (about)

     1  /*
     2  Copyright hechain. 2017 All Rights Reserved.
     3  
     4  SPDX-License-Identifier: Apache-2.0
     5  
     6  */
     7  
     8  package gossip
     9  
    10  import (
    11  	"testing"
    12  
    13  	"github.com/hechain20/hechain/internal/peer/gossip/mocks"
    14  	"github.com/hechain20/hechain/msp"
    15  	"github.com/stretchr/testify/mock"
    16  	"github.com/stretchr/testify/require"
    17  )
    18  
    19  func TestMspSecurityAdvisor_OrgByPeerIdentity(t *testing.T) {
    20  	dm := &mocks.DeserializersManager{
    21  		LocalDeserializer: &mocks.IdentityDeserializer{Identity: []byte("Alice"), Msg: []byte("msg1"), Mock: mock.Mock{}},
    22  		ChannelDeserializers: map[string]msp.IdentityDeserializer{
    23  			"A": &mocks.IdentityDeserializer{Identity: []byte("Bob"), Msg: []byte("msg2"), Mock: mock.Mock{}},
    24  		},
    25  	}
    26  
    27  	advisor := NewSecurityAdvisor(dm)
    28  	require.NotNil(t, advisor.OrgByPeerIdentity([]byte("Alice")))
    29  	require.NotNil(t, advisor.OrgByPeerIdentity([]byte("Bob")))
    30  	require.Nil(t, advisor.OrgByPeerIdentity([]byte("Charlie")))
    31  	require.Nil(t, advisor.OrgByPeerIdentity(nil))
    32  }