forked from cerc-io/plugeth
swarm/pss: fix data race in notify_test.go (TestStart) (#18518)
This commit is contained in:
parent
684facedb8
commit
6167dd65b5
@ -128,7 +128,7 @@ func TestStart(t *testing.T) {
|
||||
defer rightSub.Unsubscribe()
|
||||
|
||||
updateC := make(chan []byte)
|
||||
updateMsg := []byte{}
|
||||
var updateMsg []byte
|
||||
ctrlClient := NewController(psses[rightPub])
|
||||
ctrlNotifier := NewController(psses[leftPub])
|
||||
ctrlNotifier.NewNotifier("foo.eth", 2, updateC)
|
||||
@ -145,17 +145,24 @@ func TestStart(t *testing.T) {
|
||||
if err != nil {
|
||||
t.Fatal(err)
|
||||
}
|
||||
|
||||
copyOfUpdateMsg := make([]byte, len(updateMsg))
|
||||
copy(copyOfUpdateMsg, updateMsg)
|
||||
ctrlClientError := make(chan error, 1)
|
||||
ctrlClient.Subscribe(rsrcName, pubkey, addrbytes, func(s string, b []byte) error {
|
||||
if s != "foo.eth" || !bytes.Equal(updateMsg, b) {
|
||||
t.Fatalf("unexpected result in client handler: '%s':'%x'", s, b)
|
||||
}
|
||||
if s != "foo.eth" || !bytes.Equal(copyOfUpdateMsg, b) {
|
||||
ctrlClientError <- fmt.Errorf("unexpected result in client handler: '%s':'%x'", s, b)
|
||||
} else {
|
||||
log.Info("client handler receive", "s", s, "b", b)
|
||||
}
|
||||
return nil
|
||||
})
|
||||
|
||||
var inMsg *pss.APIMsg
|
||||
select {
|
||||
case inMsg = <-rmsgC:
|
||||
case err := <-ctrlClientError:
|
||||
t.Fatal(err)
|
||||
case <-ctx.Done():
|
||||
t.Fatal(ctx.Err())
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user