diff --git a/exchange/bitswap/message/message_test.go b/exchange/bitswap/message/message_test.go index f98934b37fe959f88aef3484e710e58dc419bee2..9c69136cd7c181cf6b3a9a0767c4535d6909655e 100644 --- a/exchange/bitswap/message/message_test.go +++ b/exchange/bitswap/message/message_test.go @@ -169,3 +169,20 @@ func contains(s []string, x string) bool { } return false } + +func TestDuplicates(t *testing.T) { + b := blocks.NewBlock([]byte("foo")) + msg := New() + + msg.AddWanted(b.Key()) + msg.AddWanted(b.Key()) + if len(msg.Wantlist()) != 1 { + t.Fatal("Duplicate in BitSwapMessage") + } + + msg.AddBlock(*b) + msg.AddBlock(*b) + if len(msg.Blocks()) != 1 { + t.Fatal("Duplicate in BitSwapMessage") + } +}