package com.limegroup.bittorrent.messages; import java.nio.ByteBuffer; import java.nio.ByteOrder; import junit.framework.Assert; import junit.framework.Test; import org.limewire.util.BaseTestCase; import com.limegroup.bittorrent.BTInterval; public class BTPieceMessageTest extends BaseTestCase { public BTPieceMessageTest(String name) { super(name); } public static Test suite() { return buildTestSuite(BTPieceMessageTest.class); } public void testPieceMessage() { int startIndex = 0; int endIndex = 16; int pieceIndex = 1; BTInterval btInterval = new BTInterval(startIndex, endIndex, pieceIndex); byte[] data = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 }; BTPieceMessage btPieceMessage = new BTPieceMessage(btInterval, data); Assert.assertEquals(BTMessage.PIECE, btPieceMessage.getType()); Assert.assertTrue(btPieceMessage.isUrgent()); ByteBuffer testPayload = ByteBuffer.allocate(8 + data.length); testPayload.order(ByteOrder.BIG_ENDIAN); testPayload.putInt(pieceIndex); testPayload.putInt(startIndex); testPayload.put(data); testPayload.clear(); Assert.assertEquals(testPayload, btPieceMessage.getPayload()); } }