Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -74,15 +74,15 @@ private static Paragraph CreateHeader1(string caption)
return new Paragraph(caption)
.SetTextAlignment(TextAlignment.CENTER)
.SetFontSize(20)
.SetBold();
.SimulateBold();
}

private static Paragraph CreateHeader2(string caption)
{
return new Paragraph(caption)
.SetTextAlignment(TextAlignment.LEFT)
.SetFontSize(15)
.SetBold();
.SimulateBold();
}

private static Paragraph CreateNormalParagraph(string text)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@

<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net11.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
</PropertyGroup>

<ItemGroup>
<PackageReference Include="itext7" Version="8.0.2" />
<PackageReference Include="itext7.bouncy-castle-adapter" Version="8.0.2" />
<PackageReference Include="itext" Version="9.8.0" />
<PackageReference Include="itext.bouncy-castle-adapter" Version="9.8.0" />
</ItemGroup>

</Project>
6 changes: 3 additions & 3 deletions dotnet-client-libraries/ITextMergingPDFs/Tests/MergerTest.cs
Original file line number Diff line number Diff line change
Expand Up @@ -42,9 +42,9 @@ public void GivenValidParameters_WhenUsingMerge_ThenExpectOneMoreFile()
[TestMethod]
public void GivenInValidParameters_WhenUsingMerge_ThenExpectException()
{
Assert.ThrowsException<ArgumentOutOfRangeException>(() => Merger.Merge(Array.Empty<string>(), "merged"));
Assert.ThrowsException<ArgumentOutOfRangeException>(() => Merger.Merge(new string[] { "test" }, "merged"));
Assert.ThrowsException<ArgumentOutOfRangeException>(() => Merger.Merge(new string[] { "test", "test2" }, ""));
Assert.ThrowsExactly<ArgumentOutOfRangeException>(() => Merger.Merge(Array.Empty<string>(), "merged"));
Assert.ThrowsExactly<ArgumentOutOfRangeException>(() => Merger.Merge(new string[] { "test" }, "merged"));
Assert.ThrowsExactly<ArgumentOutOfRangeException>(() => Merger.Merge(new string[] { "test", "test2" }, ""));
}

[TestMethod]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
using System.Text;
using iText.Kernel.Exceptions;
using iText.Kernel.Geom;
using iText.Kernel.Pdf;
using iText.Kernel.Utils;
using ITextMergingPDFs;

namespace Tests
{
[TestClass]
public class PasswordProtectedSourceTest
{
private FolderManager _folderManager = default!;

[TestInitialize]
public void Initialize()
{
_folderManager = FolderManager.CreateFolderManagerInTemporaryFolder("TestProtected");
}

[TestCleanup]
public void Cleanup()
{
_folderManager.DeletePDFDocumentsFolder();
}

private string CreateProtectedDocument()
{
var plainFile = BigDocument.CreateDocument(_folderManager.GetFullName("plain.pdf"), PageSize.A4);
var protectedFile = _folderManager.GetFullName("protected.pdf");

var writerProperties = new WriterProperties().SetStandardEncryption(
Encoding.ASCII.GetBytes("user-password"), Encoding.ASCII.GetBytes("owner-password"),
EncryptionConstants.ALLOW_PRINTING, EncryptionConstants.ENCRYPTION_AES_256);

using var reader = new PdfReader(plainFile);
using var writer = new PdfWriter(protectedFile, writerProperties);
using var pdfDocument = new PdfDocument(reader, writer);

return protectedFile;
}

[TestMethod]
public void GivenProtectedSource_WhenOpenedWithoutPassword_ThenExpectBadPasswordException()
{
var file = CreateProtectedDocument();

Assert.ThrowsExactly<BadPasswordException>(() =>
{
using var reader = new PdfReader(file);
using var srcPdfDocument = new PdfDocument(reader);
});
}

[TestMethod]
public void GivenProtectedSource_WhenOpenedWithPassword_ThenExpectMergedPages()
{
var file = CreateProtectedDocument();
var mergedFile = _folderManager.GetFullName("merged.pdf");
int expectedPages;

using (var writer = new PdfWriter(mergedFile))
using (var mergedPdfDocument = new PdfDocument(writer))
{
var pdfMerger = new PdfMerger(mergedPdfDocument);

var readerProperties = new ReaderProperties()
.SetPassword(Encoding.ASCII.GetBytes("owner-password"));
using var reader = new PdfReader(file, readerProperties);
using var srcPdfDocument = new PdfDocument(reader);
pdfMerger.Merge(srcPdfDocument, 1, srcPdfDocument.GetNumberOfPages());
expectedPages = srcPdfDocument.GetNumberOfPages();
}

using var resultReader = new PdfReader(mergedFile);
using var result = new PdfDocument(resultReader);
Assert.AreEqual(expectedPages, result.GetNumberOfPages());
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ public void GivenTrueParameter_WhenCallingSetCloseSourceDocuments_ThenExpectAuto
pdfMerger.Merge(sourcePdfDocument, 1, sourcePdfDocument.GetNumberOfPages());

// document is not open, we can't use it
Assert.ThrowsException<PdfException>(() => { sourcePdfDocument.GetNumberOfPages(); });
Assert.ThrowsExactly<PdfException>(() => { sourcePdfDocument.GetNumberOfPages(); });
}

[TestMethod]
Expand Down
10 changes: 5 additions & 5 deletions dotnet-client-libraries/ITextMergingPDFs/Tests/Tests.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net11.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>

Expand All @@ -10,10 +10,10 @@
</PropertyGroup>

<ItemGroup>
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.7.1" />
<PackageReference Include="MSTest.TestAdapter" Version="2.2.10" />
<PackageReference Include="MSTest.TestFramework" Version="2.2.10" />
<PackageReference Include="coverlet.collector" Version="3.2.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.12.0" />
<PackageReference Include="MSTest.TestAdapter" Version="4.5.3" />
<PackageReference Include="MSTest.TestFramework" Version="4.5.3" />
<PackageReference Include="coverlet.collector" Version="10.1.0" />
</ItemGroup>

<ItemGroup>
Expand Down
Loading