Skip to content

Commit 6d4e5b7

Browse files
author
Nikola Yankov
committed
updated api definitions, added new tests
1 parent d9210eb commit 6d4e5b7

3 files changed

Lines changed: 76 additions & 3 deletions

File tree

GroupDocs.Conversion.Cloud.Sdk.Test/Api/FormatsApiTests.cs

Lines changed: 42 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
namespace GroupDocs.Conversion.Cloud.Sdk.Test.Api
1+
using GroupDocs.Conversion.Cloud.Sdk.Test.Internal;
2+
3+
namespace GroupDocs.Conversion.Cloud.Sdk.Test.Api
24
{
35
using NUnit.Framework;
46
using GroupDocs.Conversion.Cloud.Sdk.Model.Requests;
@@ -22,5 +24,44 @@ public void GetSupportedFileFormatsTest()
2224
Assert.IsNotEmpty(entry.PossibleConversions);
2325
}
2426
}
27+
28+
/// <summary>
29+
/// Test GetSupportedFileFormatsForSpecificFileType
30+
/// </summary>
31+
[Test]
32+
public void GetSupportedFileFormatsForSpecificFileTypeTest()
33+
{
34+
var request = new GetPossibleConversionsForFileTypeRequest("docx");
35+
36+
var response = ConversionApi.GetPossibleConversionsForFileType(request);
37+
38+
Assert.IsTrue(response.PossibleConversions.Count > 0);
39+
Assert.AreEqual("docx", response.SourceFileType);
40+
foreach (var entry in response.PossibleConversions)
41+
{
42+
Assert.IsNotEmpty(entry);
43+
}
44+
}
45+
46+
47+
/// <summary>
48+
/// Test PossibleConversionsForDocument
49+
/// </summary>
50+
[Test]
51+
public void PossibleConversionsForDocumentTest()
52+
{
53+
var stream = GetTestFileStream(TestFiles.OnePageDocx);
54+
var request = new PossibleConversionsForDocumentRequest(stream);
55+
56+
var response = ConversionApi.PossibleConversionsForDocument(request);
57+
58+
Assert.IsTrue(response.PossibleConversions.Count > 0);
59+
Assert.AreEqual("stream", response.SourceFileType);
60+
foreach (var entry in response.PossibleConversions)
61+
{
62+
Assert.IsNotEmpty(entry);
63+
}
64+
stream.Dispose();
65+
}
2566
}
2667
}

GroupDocs.Conversion.Cloud.Sdk/Api/ConversionApi.cs

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -474,7 +474,7 @@ public PossibleConversionResponse GetPossibleConversionsForFileType(GetPossibleC
474474
.Replace(resourcePath, "\\*", string.Empty)
475475
.Replace("&amp;", "&")
476476
.Replace("/?", "?");
477-
resourcePath = UrlHelper.AddQueryParameterToUrl(resourcePath, "extension", request.Extension);
477+
resourcePath = UrlHelper.AddPathParameter(resourcePath, "extension", request.Extension);
478478

479479
var response = this.apiInvoker.InvokeApi(
480480
resourcePath,
@@ -498,19 +498,31 @@ public PossibleConversionResponse GetPossibleConversionsForFileType(GetPossibleC
498498
/// <returns><see cref="PossibleConversionResponse"/></returns>
499499
public PossibleConversionResponse PossibleConversionsForDocument(PossibleConversionsForDocumentRequest request)
500500
{
501+
// verify the required parameter 'file' is set
502+
if (request.File == null)
503+
{
504+
throw new ApiException(400, "Missing required parameter 'file' when calling PossibleConversionsForDocument");
505+
}
506+
501507
// create path and map variables
502508
var resourcePath = this.configuration.GetApiRootUrl() + "/conversion/formats";
503509
resourcePath = Regex
504510
.Replace(resourcePath, "\\*", string.Empty)
505511
.Replace("&amp;", "&")
506512
.Replace("/?", "?");
513+
var formParams = new Dictionary<string, object>();
514+
515+
if (request.File != null)
516+
{
517+
formParams.Add("file", this.apiInvoker.ToFileInfo(request.File, "File"));
518+
}
507519

508520
var response = this.apiInvoker.InvokeApi(
509521
resourcePath,
510522
"POST",
511523
null,
512524
null,
513-
null);
525+
formParams);
514526

515527
if (response != null)
516528
{

GroupDocs.Conversion.Cloud.Sdk/Model/Requests/PossibleConversionsForDocumentRequest.cs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,5 +32,25 @@ namespace GroupDocs.Conversion.Cloud.Sdk.Model.Requests
3232
/// </summary>
3333
public class PossibleConversionsForDocumentRequest
3434
{
35+
/// <summary>
36+
/// Initializes a new instance of the <see cref="PossibleConversionsForDocumentRequest"/> class.
37+
/// </summary>
38+
public PossibleConversionsForDocumentRequest()
39+
{
40+
}
41+
42+
/// <summary>
43+
/// Initializes a new instance of the <see cref="PossibleConversionsForDocumentRequest"/> class.
44+
/// </summary>
45+
/// <param name="file">File contents.</param>
46+
public PossibleConversionsForDocumentRequest(System.IO.Stream file)
47+
{
48+
this.File = file;
49+
}
50+
51+
/// <summary>
52+
/// File contents.
53+
/// </summary>
54+
public System.IO.Stream File { get; set; }
3555
}
3656
}

0 commit comments

Comments
 (0)