Skip to content

Commit c93468a

Browse files
yulian-gaponenkoitext-teamcity
authored andcommitted
Update tests, update remarks about wrong handling
Autoported commit. Original commit hash: [f66f0b42f]
1 parent 891ec78 commit c93468a

File tree

2 files changed

+13
-11
lines changed

2 files changed

+13
-11
lines changed

itext.tests/itext.kernel.tests/itext/kernel/pdf/FreeReferencesTest.cs

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -25,10 +25,12 @@ public virtual void FreeReferencesTest01() {
2525
+ @out));
2626
pdfDocument.Close();
2727
String[] xrefString = ExtractXrefTableAsStrings(@out);
28-
String[] expected = new String[] { "xref\n" + "0 4\n" + "0000000000 65535 f \n" + "0000000269 00000 n \n"
29-
+ "0000000561 00000 n \n" + "0000000314 00000 n \n" + "12 3\n" + "0000000133 00000 n \n" + "0000000015 00000 n \n"
30-
+ "0000000613 00000 n \n" };
28+
String[] expected = new String[] { "xref\n" + "0 5\n" + "0000000010 65535 f \n" + "0000000269 00000 n \n"
29+
+ "0000000561 00000 n \n" + "0000000314 00000 n \n" + "0000000011 65535 f \n" + "10 5\n" + "0000000000 00001 f \n"
30+
+ "0000000000 00002 f \n" + "0000000133 00000 n \n" + "0000000015 00000 n \n" + "0000000613 00000 n \n"
31+
};
3132
// TODO first xref shall have no subsections
33+
// TODO linked list of refs is invalid
3234
NUnit.Framework.Assert.AreEqual(expected, xrefString);
3335
}
3436

@@ -40,6 +42,7 @@ public virtual void FreeReferencesTest02() {
4042
PdfDocument pdfDocument = new PdfDocument(new PdfReader(sourceFolder + src), new PdfWriter(destinationFolder
4143
+ @out), new StampingProperties().UseAppendMode());
4244
pdfDocument.Close();
45+
// TODO exception is thrown on attempt to read free reference
4346
String[] xrefString = ExtractXrefTableAsStrings(@out);
4447
String[] expected = new String[] { "xref\n" + "0 5\n" + "0000000010 65535 f \n" + "0000000269 00000 n \n"
4548
+ "0000000569 00000 n \n" + "0000000314 00000 n \n" + "0000000000 65535 f \n" + "10 5\n" + "0000000011 00000 f \n"
@@ -63,9 +66,8 @@ public virtual void FreeReferencesTest03() {
6366
+ "0000000564 00000 n \n" + "0000000310 00000 n \n" + "0000000132 00000 n \n" + "0000000015 00001 n \n"
6467
+ "0000000476 00000 n \n", "xref\n" + "0 1\n" + "0000000005 65535 n \n" + "3 3\n" + "0000000923 00000 n \n"
6568
+ "0000001170 00000 n \n" + "0000000000 00002 f \n" + "7 1\n" + "0000001303 00000 n \n", "xref\n" + "1 3\n"
66-
+ "0000001706 00000 n \n" + "0000001998 00000 n \n" + "0000001751 00000 n \n" + "5 1\n" + "0000002055 00002 n \n"
67-
+ "8 1\n" + "0000002156 00000 n \n" };
68-
// TODO fifth object is no longer free, however zero obj not updated
69+
+ "0000001706 00000 n \n" + "0000001998 00000 n \n" + "0000001751 00000 n \n" + "8 2\n" + "0000002055 00000 n \n"
70+
+ "0000002156 00000 n \n" };
6971
NUnit.Framework.Assert.AreEqual(expected, xrefString);
7072
}
7173

@@ -82,6 +84,7 @@ public virtual void FreeReferencesTest04() {
8284
contentsRef.SetFree();
8385
PdfObject freedContentsRefRefersTo = contentsRef.GetRefersTo();
8486
NUnit.Framework.Assert.IsNull(freedContentsRefRefersTo);
87+
// TODO assertion fails. Free reference should not be reread, see freeReferencesTest02
8588
pdfDocument.Close();
8689
}
8790

@@ -126,10 +129,9 @@ public virtual void FreeReferencesTest07() {
126129
pdfDocument.AddNewPage();
127130
pdfDocument.Close();
128131
String[] xrefString = ExtractXrefTableAsStrings(@out);
129-
String[] expected = new String[] { "xref\n" + "0 4\n" + "0000000000 65535 f \n" + "0000000203 00000 n \n"
130-
+ "0000000414 00000 n \n" + "0000000248 00000 n \n" + "5 2\n" + "0000000088 00000 n \n" + "0000000015 00000 n \n"
131-
};
132-
// TODO first xref shall have no subsections
132+
String[] expected = new String[] { "xref\n" + "0 7\n" + "0000000004 65535 f \n" + "0000000203 00000 n \n"
133+
+ "0000000414 00000 n \n" + "0000000248 00000 n \n" + "0000000000 00001 f \n" + "0000000088 00000 n \n"
134+
+ "0000000015 00000 n \n" };
133135
NUnit.Framework.Assert.AreEqual(expected, xrefString);
134136
}
135137

port-hash

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
92f713311a203b6af3ff544ee8e0e76df8ab1f50
1+
f66f0b42f981f9e55c085bd283460205fe9d81de

0 commit comments

Comments
 (0)