1
2
3
4
5
6 package mockit.asm.constantPool;
7
8 import static org.junit.jupiter.api.Assertions.assertEquals;
9 import static org.junit.jupiter.api.Assertions.assertFalse;
10 import static org.junit.jupiter.api.Assertions.assertTrue;
11
12 import mockit.asm.jvmConstants.ConstantPoolTypes;
13
14 import org.junit.jupiter.api.Test;
15
16 final class PackageItemTest {
17
18 @Test
19 void constructorWithIndexTypeAndValue() {
20 PackageItem item = new PackageItem(1, ConstantPoolTypes.PACKAGE, "java/lang");
21 assertEquals(1, item.index);
22 assertEquals("java/lang", item.getValue());
23 }
24
25 @Test
26 void defaultConstructorHasEmptyString() {
27 PackageItem item = new PackageItem();
28 assertEquals("", item.getValue());
29 }
30
31 @Test
32 void copyConstructor() {
33 PackageItem original = new PackageItem(1, ConstantPoolTypes.PACKAGE, "java/lang");
34 PackageItem copy = new PackageItem(2, original);
35 assertEquals(2, copy.index);
36 assertEquals("java/lang", copy.getValue());
37 }
38
39 @Test
40 void isEqualToWithSameValue() {
41 PackageItem item1 = new PackageItem(1, ConstantPoolTypes.PACKAGE, "java/lang");
42 PackageItem item2 = new PackageItem(2, ConstantPoolTypes.PACKAGE, "java/lang");
43 assertTrue(item1.isEqualTo((Item) item2));
44 }
45
46 @Test
47 void isEqualToWithDifferentValue() {
48 PackageItem item1 = new PackageItem(1, ConstantPoolTypes.PACKAGE, "java/lang");
49 PackageItem item2 = new PackageItem(2, ConstantPoolTypes.PACKAGE, "java/util");
50 assertFalse(item1.isEqualTo((Item) item2));
51 }
52
53 @Test
54 void setUpdatesValue() {
55 PackageItem item = new PackageItem(1, ConstantPoolTypes.PACKAGE, "java/lang");
56 item.set(ConstantPoolTypes.PACKAGE, "java/util");
57 assertEquals("java/util", item.getValue());
58 }
59 }