Skip to content

Commit 993de4a

Browse files
committed
Add encryption to the Issue177 tests
1 parent 3ca5279 commit 993de4a

1 file changed

Lines changed: 26 additions & 2 deletions

File tree

  • src/iTextSharp.LGPLv2.Core.FunctionalTests/Issues

src/iTextSharp.LGPLv2.Core.FunctionalTests/Issues/Issue177.cs

Lines changed: 26 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,35 @@ public void Test_Issue177_Verify_PdfReader_Works()
2323
public void Test_Issue177_Verify_PdfStamper_Works()
2424
{
2525
var inputFile = TestUtils.GetPdfsPath(fileName: "issue177.pdf");
26-
using var outStream = new FileStream(TestUtils.GetOutputFileName(), FileMode.Create);
27-
// PdfReader.AllowOpenWithFullPermissions = true;
26+
var outputFile = TestUtils.GetOutputFileName();
27+
28+
var userPassword = "user";
29+
var ownerPassword = "owner";
30+
31+
ReadEncryptedFileModifyItEncryptItAgain(outputFile, inputFile, userPassword, ownerPassword);
32+
ReadOutputEncryptedFile(outputFile, ownerPassword);
33+
}
34+
35+
private static void ReadOutputEncryptedFile(string outputFile, string ownerPassword)
36+
{
37+
using var reader = new PdfReader(outputFile, ownerPassword);
38+
Assert.AreEqual(expected: 1, reader.NumberOfPages);
39+
}
40+
41+
private static void ReadEncryptedFileModifyItEncryptItAgain(string outputFile,
42+
string inputFile,
43+
string userPassword,
44+
string ownerPassword)
45+
{
46+
using var outStream = new FileStream(outputFile, FileMode.Create);
47+
48+
PdfReader.AllowOpenWithFullPermissions = true;
2849
using var pdfReader = new PdfReader(inputFile);
2950
using var pdfStamper = new PdfStamper(pdfReader, outStream);
3051

52+
pdfStamper.SetEncryption(PdfWriter.ENCRYPTION_AES_256_V3, userPassword, ownerPassword,
53+
PdfWriter.ALLOW_PRINTING | PdfWriter.ALLOW_COPY);
54+
3155
var box = pdfReader.GetPageSize(index: 1);
3256
var canvas = pdfStamper.GetOverContent(pageNum: 1);
3357
canvas.SetRgbColorStroke(red: 255, green: 0, blue: 0);

0 commit comments

Comments
 (0)