Skip to content

Commit 4ae308f

Browse files
Improve ProductData and AbstractContextBasedITextEvent#setMetaInfo test coverage
DEVSIX-5706
1 parent 4b0107e commit 4ae308f

File tree

2 files changed

+79
-0
lines changed

2 files changed

+79
-0
lines changed
Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
package com.itextpdf.commons.actions;
2+
3+
import com.itextpdf.commons.actions.contexts.IMetaInfo;
4+
import com.itextpdf.commons.actions.data.CommonsProductData;
5+
import com.itextpdf.commons.actions.data.ProductData;
6+
import com.itextpdf.commons.ecosystem.TestMetaInfo;
7+
import com.itextpdf.commons.exceptions.CommonsExceptionMessageConstant;
8+
import com.itextpdf.test.ExtendedITextTest;
9+
import com.itextpdf.test.annotations.type.UnitTest;
10+
11+
import org.junit.Assert;
12+
import org.junit.Test;
13+
import org.junit.experimental.categories.Category;
14+
15+
@Category(UnitTest.class)
16+
public class AbstractContextBasedITextEventTest extends ExtendedITextTest {
17+
18+
@Test
19+
public void setMetaInfoTest() {
20+
BasicAbstractContextBasedITextEvent e =
21+
new BasicAbstractContextBasedITextEvent(CommonsProductData.getInstance(), null);
22+
23+
TestMetaInfo metaInfoAfter = new TestMetaInfo("meta-info-after");
24+
e.setMetaInfo(metaInfoAfter);
25+
Assert.assertSame(metaInfoAfter, e.getMetaInfo());
26+
}
27+
28+
@Test
29+
public void resetMetaInfoForbiddenTest() {
30+
TestMetaInfo metaInfoBefore = new TestMetaInfo("meta-info-before");
31+
TestMetaInfo metaInfoAfter = new TestMetaInfo("meta-info-after");
32+
BasicAbstractContextBasedITextEvent e =
33+
new BasicAbstractContextBasedITextEvent(CommonsProductData.getInstance(), metaInfoBefore);
34+
35+
Assert.assertSame(metaInfoBefore, e.getMetaInfo());
36+
37+
Exception exception = Assert.assertThrows(IllegalStateException.class, () -> e.setMetaInfo(metaInfoAfter));
38+
Assert.assertEquals(CommonsExceptionMessageConstant.META_INFO_SHOULDNT_BE_NULL, exception.getMessage());
39+
}
40+
41+
private static class BasicAbstractContextBasedITextEvent extends AbstractContextBasedITextEvent {
42+
protected BasicAbstractContextBasedITextEvent(ProductData productData,
43+
IMetaInfo metaInfo) {
44+
super(productData, metaInfo);
45+
}
46+
}
47+
}

commons/src/test/java/com/itextpdf/commons/actions/data/ProductDataTest.java

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,4 +41,36 @@ public void productDataCreationTest() {
4141
Assert.assertEquals(1900, productData.getSinceCopyrightYear());
4242
Assert.assertEquals(2100, productData.getToCopyrightYear());
4343
}
44+
45+
@Test
46+
public void equalsTest() {
47+
ProductData a = new ProductData("publicProductName", "productName", "1.2", 1900, 2100);
48+
ProductData b = new ProductData("publicProductName", "productName", "1.2", 1900, 2100);
49+
50+
Assert.assertEquals(a, a);
51+
52+
Assert.assertEquals(a, b);
53+
Assert.assertEquals(b, a);
54+
}
55+
56+
@Test
57+
public void notEqualsTest() {
58+
ProductData a = new ProductData("publicProductName", "productName", "1.2", 1900, 2100);
59+
ProductData d = new ProductData("publicProductName", "productName", "1.2", 1910, 2110);
60+
61+
Assert.assertNotEquals(a, d);
62+
}
63+
64+
@Test
65+
public void hashCodeTest() {
66+
ProductData a = new ProductData("publicProductName", "productName", "1.2", 1900, 2100);
67+
ProductData b = new ProductData("publicProductName", "productName", "1.2", 1900, 2100);
68+
69+
Assert.assertEquals(a, b);
70+
Assert.assertEquals(a.hashCode(), b.hashCode());
71+
72+
int h1 = a.hashCode();
73+
int h2 = a.hashCode();
74+
Assert.assertEquals(h1, h2);
75+
}
4476
}

0 commit comments

Comments
 (0)