github.com/uber/kraken@v0.1.4/lib/torrent/scheduler/conn/fake_peer_test.go (about)

     1  package conn
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/require"
     7  
     8  	"github.com/uber/kraken/lib/torrent/storage"
     9  )
    10  
    11  func TestFakePeer(t *testing.T) {
    12  	require := require.New(t)
    13  
    14  	p, err := NewFakePeer()
    15  	require.NoError(err)
    16  	defer p.Close()
    17  
    18  	h := HandshakerFixture(ConfigFixture())
    19  
    20  	info := storage.TorrentInfoFixture(32, 4)
    21  
    22  	res, err := h.Initialize(p.PeerID(), p.Addr(), info, nil, "noexist")
    23  	require.NoError(err)
    24  
    25  	require.Equal(p.PeerID(), res.Conn.PeerID())
    26  	require.Equal(info.InfoHash(), res.Conn.InfoHash())
    27  	require.Equal(info.Bitfield().Len(), res.Bitfield.Len())
    28  	require.False(res.Bitfield.Any())
    29  }