Skip to content

Commit 98e18b6

Browse files
Kate IvanovaiText-CI
authored andcommitted
Improve code coverage
DEVSIX-5403 Autoported commit. Original commit hash: [145bfaca1]
1 parent 31d3a27 commit 98e18b6

File tree

14 files changed

+217
-1
lines changed

14 files changed

+217
-1
lines changed

itext.tests/itext.sign.tests/itext/signatures/SignatureUtilTest.cs

Lines changed: 112 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ source product.
4242
*/
4343
using System;
4444
using System.Collections.Generic;
45+
using iText.Kernel;
4546
using iText.Kernel.Pdf;
4647
using iText.Test;
4748

@@ -50,6 +51,10 @@ public class SignatureUtilTest : ExtendedITextTest {
5051
private static readonly String sourceFolder = iText.Test.TestUtil.GetParentProjectDirectory(NUnit.Framework.TestContext
5152
.CurrentContext.TestDirectory) + "/resources/itext/signatures/SignatureUtilTest/";
5253

54+
[NUnit.Framework.OneTimeSetUp]
55+
public static void Before() {
56+
}
57+
5358
[NUnit.Framework.Test]
5459
public virtual void GetSignaturesTest01() {
5560
String inPdf = sourceFolder + "simpleSignature.pdf";
@@ -148,5 +153,112 @@ public virtual void NotIndirectSigDictionaryTest() {
148153
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
149154
NUnit.Framework.Assert.IsTrue(signatureUtil.SignatureCoversWholeDocument("Signature1"));
150155
}
156+
157+
[NUnit.Framework.Test]
158+
public virtual void EmptySignatureReadSignatureDataTest() {
159+
String inPdf = sourceFolder + "emptySignature.pdf";
160+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
161+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
162+
NUnit.Framework.Assert.IsNull(signatureUtil.ReadSignatureData("Signature1"));
163+
}
164+
165+
[NUnit.Framework.Test]
166+
public virtual void ReadSignatureDataTest() {
167+
String inPdf = sourceFolder + "simpleSignature.pdf";
168+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
169+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
170+
NUnit.Framework.Assert.IsNotNull(signatureUtil.ReadSignatureData("Signature1"));
171+
NUnit.Framework.Assert.IsTrue(signatureUtil.ReadSignatureData("Signature1") is PdfPKCS7);
172+
}
173+
174+
[NUnit.Framework.Test]
175+
public virtual void ReadSignatureDataWithSpecialSubFilterTest() {
176+
String inPdf = sourceFolder + "adbe.x509.rsa_sha1_signature.pdf";
177+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
178+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
179+
NUnit.Framework.Assert.IsNotNull(signatureUtil.ReadSignatureData("Signature1"));
180+
NUnit.Framework.Assert.IsTrue(signatureUtil.ReadSignatureData("Signature1") is PdfPKCS7);
181+
}
182+
183+
[NUnit.Framework.Test]
184+
public virtual void ByteRangeAndContentsEntriesTest() {
185+
String inPdf = sourceFolder + "byteRangeAndContentsEntries.pdf";
186+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
187+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
188+
iText.Test.AssertUtil.AssertThrows(typeof(PdfException), () => signatureUtil.ReadSignatureData("Signature1"
189+
));
190+
}
191+
192+
[NUnit.Framework.Test]
193+
public virtual void DoesSignatureFieldExistTest() {
194+
String inPdf = sourceFolder + "simpleSignature.pdf";
195+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
196+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
197+
NUnit.Framework.Assert.IsTrue(signatureUtil.DoesSignatureFieldExist("Signature1"));
198+
}
199+
200+
[NUnit.Framework.Test]
201+
public virtual void DoesSignatureFieldExistEmptySignatureTest() {
202+
String inPdf = sourceFolder + "emptySignature.pdf";
203+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
204+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
205+
NUnit.Framework.Assert.IsTrue(signatureUtil.DoesSignatureFieldExist("Signature1"));
206+
}
207+
208+
[NUnit.Framework.Test]
209+
public virtual void SignatureInTextTypeFieldTest() {
210+
String inPdf = sourceFolder + "signatureInTextTypeField.pdf";
211+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
212+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
213+
NUnit.Framework.Assert.IsFalse(signatureUtil.DoesSignatureFieldExist("Signature1"));
214+
}
215+
216+
[NUnit.Framework.Test]
217+
public virtual void GetTotalRevisionsTest() {
218+
String inPdf = sourceFolder + "simpleSignature.pdf";
219+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
220+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
221+
NUnit.Framework.Assert.AreEqual(1, signatureUtil.GetTotalRevisions());
222+
}
223+
224+
[NUnit.Framework.Test]
225+
public virtual void GetRevisionTest() {
226+
String inPdf = sourceFolder + "simpleSignature.pdf";
227+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
228+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
229+
NUnit.Framework.Assert.AreEqual(1, signatureUtil.GetRevision("Signature1"));
230+
}
231+
232+
[NUnit.Framework.Test]
233+
public virtual void GetRevisionEmptyFieldsTest() {
234+
String inPdf = sourceFolder + "emptySignature.pdf";
235+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
236+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
237+
NUnit.Framework.Assert.AreEqual(0, signatureUtil.GetRevision("Signature1"));
238+
}
239+
240+
[NUnit.Framework.Test]
241+
public virtual void GetRevisionXfaFormTest() {
242+
String inPdf = sourceFolder + "simpleSignatureWithXfa.pdf";
243+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
244+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
245+
NUnit.Framework.Assert.AreEqual(1, signatureUtil.GetRevision("Signature1"));
246+
}
247+
248+
[NUnit.Framework.Test]
249+
public virtual void ExtractRevisionTest() {
250+
String inPdf = sourceFolder + "simpleSignature.pdf";
251+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
252+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
253+
NUnit.Framework.Assert.IsNotNull(signatureUtil.ExtractRevision("Signature1"));
254+
}
255+
256+
[NUnit.Framework.Test]
257+
public virtual void ExtractRevisionNotSignatureFieldTest() {
258+
String inPdf = sourceFolder + "signatureInTextTypeField.pdf";
259+
PdfDocument pdfDocument = new PdfDocument(new PdfReader(inPdf));
260+
SignatureUtil signatureUtil = new SignatureUtil(pdfDocument);
261+
NUnit.Framework.Assert.IsNull(signatureUtil.ExtractRevision("Signature1"));
262+
}
151263
}
152264
}
Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
using System;
2+
using iText.Kernel.Pdf;
3+
using iText.Signatures;
4+
using iText.Test;
5+
6+
namespace iText.Signatures.Sign {
7+
public class PdfSignatureTest : ExtendedITextTest {
8+
public static readonly String sourceFolder = iText.Test.TestUtil.GetParentProjectDirectory(NUnit.Framework.TestContext
9+
.CurrentContext.TestDirectory) + "/resources/itext/signatures/sign/PdfSignatureTest/";
10+
11+
[NUnit.Framework.Test]
12+
public virtual void SetByteRangeTest() {
13+
using (PdfDocument doc = new PdfDocument(new PdfReader(sourceFolder + "simpleSignature.pdf"))) {
14+
SignatureUtil sigUtil = new SignatureUtil(doc);
15+
PdfSignature signature = sigUtil.GetSignature("Signature1");
16+
int[] byteRange = new int[] { 0, 141, 16526, 2494 };
17+
signature.SetByteRange(byteRange);
18+
PdfArray expected = new PdfArray((new int[] { 0, 141, 16526, 2494 }));
19+
NUnit.Framework.Assert.AreEqual(expected.ToIntArray(), signature.GetByteRange().ToIntArray());
20+
}
21+
}
22+
23+
[NUnit.Framework.Test]
24+
public virtual void SetContentsTest() {
25+
using (PdfDocument doc = new PdfDocument(new PdfReader(sourceFolder + "simpleSignature.pdf"))) {
26+
SignatureUtil sigUtil = new SignatureUtil(doc);
27+
PdfSignature signature = sigUtil.GetSignature("Signature1");
28+
byte[] newContents = new PdfString("new iText signature").GetValueBytes();
29+
signature.SetContents(newContents);
30+
NUnit.Framework.Assert.AreEqual("new iText signature", signature.GetContents().GetValue());
31+
}
32+
}
33+
34+
[NUnit.Framework.Test]
35+
public virtual void SetAndGetCertTest() {
36+
using (PdfDocument doc = new PdfDocument(new PdfReader(sourceFolder + "adbe.x509.rsa_sha1_signature.pdf"))
37+
) {
38+
SignatureUtil sigUtil = new SignatureUtil(doc);
39+
PdfSignature signature = sigUtil.GetSignature("Signature1");
40+
byte[] certChain = new PdfString("Hello, iText!!").GetValueBytes();
41+
signature.SetCert(certChain);
42+
NUnit.Framework.Assert.AreEqual("Hello, iText!!", signature.GetCertObject().ToString());
43+
}
44+
}
45+
46+
[NUnit.Framework.Test]
47+
public virtual void GetCertObjectTest() {
48+
using (PdfDocument doc = new PdfDocument(new PdfReader(sourceFolder + "adbe.x509.rsa_sha1_signature.pdf"))
49+
) {
50+
SignatureUtil sigUtil = new SignatureUtil(doc);
51+
PdfSignature signature = sigUtil.GetSignature("Signature1");
52+
NUnit.Framework.Assert.IsTrue(signature.GetCertObject().IsArray());
53+
}
54+
}
55+
56+
[NUnit.Framework.Test]
57+
public virtual void SetAndGetNameTest() {
58+
using (PdfDocument doc = new PdfDocument(new PdfReader(sourceFolder + "simpleSignature.pdf"))) {
59+
SignatureUtil sigUtil = new SignatureUtil(doc);
60+
PdfSignature signature = sigUtil.GetSignature("Signature1");
61+
NUnit.Framework.Assert.IsNull(signature.GetName());
62+
String name = "iText person";
63+
signature.SetName(name);
64+
NUnit.Framework.Assert.AreEqual(name, signature.GetName());
65+
}
66+
}
67+
68+
[NUnit.Framework.Test]
69+
public virtual void SetSignatureCreatorTest() {
70+
using (PdfDocument doc = new PdfDocument(new PdfReader(sourceFolder + "noPropBuilds.pdf"))) {
71+
SignatureUtil sigUtil = new SignatureUtil(doc);
72+
PdfSignature signature = sigUtil.GetSignature("Signature1");
73+
NUnit.Framework.Assert.IsNull(signature.GetPdfObject().GetAsDictionary(PdfName.Prop_Build));
74+
signature.SetSignatureCreator("iText.Name");
75+
String propBuild = signature.GetPdfObject().GetAsDictionary(PdfName.Prop_Build).GetAsDictionary(PdfName.App
76+
).GetAsName(PdfName.Name).GetValue();
77+
NUnit.Framework.Assert.AreEqual("iText.Name", propBuild);
78+
}
79+
}
80+
81+
[NUnit.Framework.Test]
82+
public virtual void PdfSignatureAppDefaultConstructorTest() {
83+
PdfSignatureApp signatureApp = new PdfSignatureApp();
84+
NUnit.Framework.Assert.IsTrue(signatureApp.GetPdfObject().IsDictionary());
85+
}
86+
}
87+
}

0 commit comments

Comments
 (0)