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 BTCancelTest extends BaseTestCase { public BTCancelTest(String name) { super(name); } public static Test suite() { return buildTestSuite(BTCancelTest.class); } public void testBTCancel() { int startIndex = 0; int endIndex = 16; int pieceIndex = 0; BTInterval btInterval = new BTInterval(startIndex, endIndex, pieceIndex); BTCancel btCancel = new BTCancel(btInterval); Assert.assertEquals(BTMessage.CANCEL, btCancel.getType()); Assert.assertEquals(btInterval, btCancel.getInterval()); Assert.assertFalse(btCancel.isUrgent()); Assert.assertEquals(12, btCancel.getPayload().limit()); ByteBuffer testBuffer = ByteBuffer.allocate(12); testBuffer.order(ByteOrder.BIG_ENDIAN); testBuffer.putInt(pieceIndex); testBuffer.putInt(startIndex); int length = endIndex - startIndex + 1; testBuffer.putInt(length); testBuffer.clear(); Assert.assertEquals(testBuffer, btCancel.getPayload()); } }