github.com/unionj-cloud/go-doudou/v2@v2.3.5/toolkit/memberlist/event_delegate_test.go (about)

     1  package memberlist
     2  
     3  import (
     4  	"github.com/stretchr/testify/require"
     5  	"testing"
     6  )
     7  
     8  func TestChannelEventDelegate_NotifyJoin(t *testing.T) {
     9  	eventCh := make(chan NodeEvent, 1)
    10  	c := &ChannelEventDelegate{
    11  		Ch: eventCh,
    12  	}
    13  	c.NotifyJoin(&Node{
    14  		Name: "",
    15  		Addr: "test",
    16  		Port: 7946,
    17  	})
    18  	ne := <-eventCh
    19  	require.Equal(t, NodeJoin, ne.Event)
    20  }
    21  
    22  func TestChannelEventDelegate_NotifyLeave(t *testing.T) {
    23  	eventCh := make(chan NodeEvent, 1)
    24  	c := &ChannelEventDelegate{
    25  		Ch: eventCh,
    26  	}
    27  	c.NotifyLeave(&Node{
    28  		Name: "",
    29  		Addr: "test",
    30  		Port: 7946,
    31  	})
    32  	ne := <-eventCh
    33  	require.Equal(t, NodeLeave, ne.Event)
    34  }
    35  
    36  func TestChannelEventDelegate_NotifyUpdate(t *testing.T) {
    37  	eventCh := make(chan NodeEvent, 1)
    38  	c := &ChannelEventDelegate{
    39  		Ch: eventCh,
    40  	}
    41  	c.NotifyUpdate(&Node{
    42  		Name: "",
    43  		Addr: "test",
    44  		Port: 7946,
    45  	})
    46  	ne := <-eventCh
    47  	require.Equal(t, NodeUpdate, ne.Event)
    48  }
    49  
    50  func TestChannelEventDelegate_NotifyWeight(t *testing.T) {
    51  	eventCh := make(chan NodeEvent, 1)
    52  	c := &ChannelEventDelegate{
    53  		Ch: eventCh,
    54  	}
    55  	c.NotifyWeight(&Node{
    56  		Name: "",
    57  		Addr: "test",
    58  		Port: 7946,
    59  	})
    60  	ne := <-eventCh
    61  	require.Equal(t, NodeWeight, ne.Event)
    62  }
    63  
    64  func TestChannelEventDelegate_NotifySuspectSateChange(t *testing.T) {
    65  	eventCh := make(chan NodeEvent, 1)
    66  	c := &ChannelEventDelegate{
    67  		Ch: eventCh,
    68  	}
    69  	c.NotifySuspectSateChange(&Node{
    70  		Name: "",
    71  		Addr: "test",
    72  		Port: 7946,
    73  	})
    74  	ne := <-eventCh
    75  	require.Equal(t, NodeSuspect, ne.Event)
    76  }