package org.limewire.collection; import junit.framework.Assert; import junit.framework.Test; import org.limewire.util.BaseTestCase; public class OrViewTest extends BaseTestCase { public OrViewTest(String name) { super(name); } public static Test suite() { return buildTestSuite(OrViewTest.class); } /** * Test data. * <pre> * Output: bf1: 1100 * bf2: 1010 * av: 1110 * </pre> */ public void testBasic() { BitSet bitSet1 = new BitSet(4); bitSet1.flip(0); bitSet1.flip(1); BitSet bitSet2 = new BitSet(4); bitSet2.flip(0); bitSet2.flip(2); BitField bitField1 = new BitFieldSet(bitSet1, 4); BitField bitField2 = new BitFieldSet(bitSet2, 4); OrView orView = new OrView(bitField1, bitField2); Assert.assertEquals(true, orView.get(0)); Assert.assertEquals(true, orView.get(1)); Assert.assertEquals(true, orView.get(2)); Assert.assertEquals(false, orView.get(3)); Assert.assertEquals(0, orView.nextSetBit(0)); Assert.assertEquals(1, orView.nextSetBit(1)); Assert.assertEquals(2, orView.nextSetBit(2)); Assert.assertEquals(-1, orView.nextSetBit(3)); Assert.assertEquals(3, orView.nextClearBit(0)); Assert.assertEquals(3, orView.nextClearBit(1)); Assert.assertEquals(3, orView.nextClearBit(2)); Assert.assertEquals(3, orView.nextClearBit(3)); } }