Tests BitField constructed with int masks.
| 27 | * Tests {@link BitField} constructed with int masks. |
| 28 | */ |
| 29 | class BitFieldTest extends AbstractLangTest { |
| 30 | |
| 31 | private static final BitField BF_MULTI = new BitField(0x3F80); |
| 32 | |
| 33 | private static final BitField BF_SINGLE = new BitField(0x4000); |
| 34 | |
| 35 | private static final BitField BF_ZERO = new BitField(0); |
| 36 | |
| 37 | @Test |
| 38 | void testByteBoolean() { |
| 39 | assertEquals(0, new BitField(0).setByteBoolean((byte) 0, true)); |
| 40 | assertEquals(1, new BitField(1).setByteBoolean((byte) 0, true)); |
| 41 | assertEquals(2, new BitField(2).setByteBoolean((byte) 0, true)); |
| 42 | assertEquals(4, new BitField(4).setByteBoolean((byte) 0, true)); |
| 43 | assertEquals(8, new BitField(8).setByteBoolean((byte) 0, true)); |
| 44 | assertEquals(16, new BitField(16).setByteBoolean((byte) 0, true)); |
| 45 | assertEquals(32, new BitField(32).setByteBoolean((byte) 0, true)); |
| 46 | assertEquals(64, new BitField(64).setByteBoolean((byte) 0, true)); |
| 47 | assertEquals(-128, new BitField(128).setByteBoolean((byte) 0, true)); |
| 48 | assertEquals(1, new BitField(0).setByteBoolean((byte) 1, false)); |
| 49 | assertEquals(0, new BitField(1).setByteBoolean((byte) 1, false)); |
| 50 | assertEquals(0, new BitField(2).setByteBoolean((byte) 2, false)); |
| 51 | assertEquals(0, new BitField(4).setByteBoolean((byte) 4, false)); |
| 52 | assertEquals(0, new BitField(8).setByteBoolean((byte) 8, false)); |
| 53 | assertEquals(0, new BitField(16).setByteBoolean((byte) 16, false)); |
| 54 | assertEquals(0, new BitField(32).setByteBoolean((byte) 32, false)); |
| 55 | assertEquals(0, new BitField(64).setByteBoolean((byte) 64, false)); |
| 56 | assertEquals(0, new BitField(128).setByteBoolean((byte) 128, false)); |
| 57 | assertEquals(-2, new BitField(1).setByteBoolean((byte) 255, false)); |
| 58 | final byte clearedBit = new BitField(0x40).setByteBoolean((byte) -63, false); |
| 59 | assertFalse(new BitField(0x40).isSet(clearedBit)); |
| 60 | } |
| 61 | |
| 62 | /** |
| 63 | * Tests the {@link BitField#clear()} method. |
| 64 | */ |
| 65 | @Test |
| 66 | void testClearInt() { |
| 67 | assertEquals(BF_MULTI.clear(-1), 0xFFFFC07F); |
| 68 | assertEquals(BF_SINGLE.clear(-1), 0xFFFFBFFF); |
| 69 | assertEquals(BF_ZERO.clear(-1), 0xFFFFFFFF); |
| 70 | } |
| 71 | |
| 72 | /** |
| 73 | * Tests the {@link BitField#clear()} method. |
| 74 | */ |
| 75 | @Test |
| 76 | void testClearLong() { |
| 77 | assertEquals(BF_MULTI.clear(-1L), 0xFFFFC07F); |
| 78 | assertEquals(BF_SINGLE.clear(-1L), 0xFFFFBFFF); |
| 79 | assertEquals(BF_ZERO.clear(-1L), 0xFFFFFFFF); |
| 80 | } |
| 81 | |
| 82 | /** |
| 83 | * Tests the {@link BitField#clearShort()} method. |
| 84 | */ |
| 85 | @Test |
| 86 | void testClearShort() { |
nothing calls this directly
no outgoing calls
no test coverage detected
searching dependent graphs…