Skip to content

Commit d6b85c3

Browse files
Show error if user use storeFile parameter
1 parent 05b66ba commit d6b85c3

File tree

4 files changed

+35
-5
lines changed

4 files changed

+35
-5
lines changed

ConvertApi.Cli.Tests/CliTests.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,18 @@ public void TestMergePdfs()
4141
Assert.AreEqual(0, process.ExitCode, "CLI did not exit cleanly.");
4242
Assert.IsTrue(File.Exists(outputFile), "Output file was not created.");
4343
}
44+
45+
[Test]
46+
public void TestCompareDocx()
47+
{
48+
var outputFile = Path.Combine(TestOutputDir, "demo.docx");
49+
var inputFile1 = Path.Combine(Directory.GetCurrentDirectory(), "../../../../", "test_files", "demo.docx");
50+
var inputFile2 = Path.Combine(Directory.GetCurrentDirectory(), "../../../../", "test_files", "demo-changed.docx");
51+
var process = RunCli($"{ApiToken} {outputFile} {inputFile1} docx compare CompareFile={inputFile2} storeFile=true");
52+
53+
Assert.AreEqual(0, process.ExitCode, "CLI did not exit cleanly.");
54+
Assert.IsTrue(!File.Exists(outputFile), "Output file should not be not created.");
55+
}
4456

4557
[Test]
4658
public void TestAddWatermarkToPdf()

ConvertApi.Cli.Tests/DirectCallTests.cs

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,21 @@ public async Task TestAddWatermarkOverlayToPdf()
7070
{
7171
var outputFile = Path.Combine(TestOutputDir, "watermarkOverlay.pdf");
7272
var inputFile = Path.Combine(Directory.GetCurrentDirectory(), "../../../../", "test_files", "simple.pdf");
73-
var overlayFile = Path.Combine(Directory.GetCurrentDirectory(), "../../../../", "test_files", "simple.pdf");
73+
var overlayFile = @"D:\Code\ConvertApi\ConvertApi.Converter.PdfToolkit\ConvertApi.Converter.PdfToolkit.Tests\Files\Watermark\green.pdf";
7474

75-
await Program.Main([ApiToken, TestOutputDir, inputFile, "pdf", "watermark-overlay", "FileName=watermarkOverlay", $"OverlayFile={overlayFile}"]);
75+
await Program.Main([ApiToken, TestOutputDir, inputFile, "pdf", "watermark-overlay", $"OverlayFile={overlayFile}"]);
76+
77+
Assert.IsTrue(File.Exists(outputFile), "Output file was not created.");
78+
}
79+
80+
[Test]
81+
public async Task TestDocxCompare()
82+
{
83+
var outputFile = Path.Combine(TestOutputDir, "demo.docx");
84+
var inputFile = Path.Combine(Directory.GetCurrentDirectory(), "../../../../", "test_files", "demo.docx");
85+
var compareFile = Path.Combine(Directory.GetCurrentDirectory(), "../../../../", "test_files", "demo-changed.docx");
86+
87+
await Program.Main([ApiToken, TestOutputDir, inputFile, "docx", "compare", $"CompareFile={compareFile}", "storeFile=false"]);
7688

7789
Assert.IsTrue(File.Exists(outputFile), "Output file was not created.");
7890
}

ConvertApi.Cli/Program.cs

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
using System.Diagnostics;
1+
using System.Diagnostics;
22
using System.Net.Http.Headers;
33
using System.Reflection;
44
using Microsoft.AspNetCore.WebUtilities;
@@ -48,6 +48,12 @@ public static async Task Main(string[] args)
4848
arg => arg.Split('=')[1]
4949
);
5050

51+
if (dynamicProperties.Any(x => x.Key.ToLower() == "storefile" && x.Value.ToLower() == "true"))
52+
{
53+
Console.WriteLine("Error: StoreFile parameter is now allowed in cli tool. Please use our API directly if you need this parameter.");
54+
return;
55+
}
56+
5157
// Setting file name for simplified (3 parameters) conversion.
5258
if (args.Length == 3 && dynamicProperties.Keys.All(x => !x.Equals("FileName", StringComparison.CurrentCultureIgnoreCase)))
5359
dynamicProperties.Add("FileName", Path.GetFileNameWithoutExtension(outputDirectoryOrFile));
@@ -132,8 +138,8 @@ static async Task ConvertFiles(string apiToken, string fromFormat, string toForm
132138
}
133139
}
134140
}
135-
136-
foreach (var (filePropertyName, filePath) in properties.Where(x => x.Key.ToLower().EndsWith("file")))
141+
142+
foreach (var (filePropertyName, filePath) in properties.Where(x => x.Key.ToLower().EndsWith("file") && x.Key.ToLower() != ("storefile")))
137143
{
138144
AddFilesToFormParameters(form, filePropertyName, filePath);
139145
}

test_files/demo-changed.docx

1.32 MB
Binary file not shown.

0 commit comments

Comments
 (0)