Skip to content

Commit 7638805

Browse files
committed
I am confidence I have enough tests now
1 parent 96fae88 commit 7638805

File tree

2 files changed

+37
-11
lines changed

2 files changed

+37
-11
lines changed

src/Microsoft.OpenApi.Hidi/OpenApiService.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -505,7 +505,7 @@ private static string GetInputPathExtension(string openapi = null, string csdl =
505505
return extension;
506506
}
507507

508-
internal static async Task ShowOpenApiDocument(string openapi, string csdl, string csdlFilter, FileInfo output, ILogger logger, CancellationToken cancellationToken)
508+
internal static async Task<string> ShowOpenApiDocument(string openapi, string csdl, string csdlFilter, FileInfo output, ILogger logger, CancellationToken cancellationToken)
509509
{
510510
try
511511
{
@@ -542,6 +542,8 @@ internal static async Task ShowOpenApiDocument(string openapi, string csdl, stri
542542
process.StartInfo.FileName = output.FullName;
543543
process.StartInfo.UseShellExecute = true;
544544
process.Start();
545+
546+
return output.FullName;
545547
}
546548
else // Write diagram as Markdown document to output file
547549
{
@@ -551,6 +553,7 @@ internal static async Task ShowOpenApiDocument(string openapi, string csdl, stri
551553
WriteTreeDocumentAsMarkdown(openapi ?? csdl, document, writer);
552554
}
553555
logger.LogTrace("Created markdown document with diagram ");
556+
return output.FullName;
554557
}
555558
}
556559
}
@@ -562,6 +565,7 @@ internal static async Task ShowOpenApiDocument(string openapi, string csdl, stri
562565
{
563566
throw new InvalidOperationException($"Could not generate the document, reason: {ex.Message}", ex);
564567
}
568+
return null;
565569
}
566570

567571
private static void LogErrors(ILogger logger, ReadResult result)

test/Microsoft.OpenApi.Hidi.Tests/Services/OpenApiServiceTests.cs

Lines changed: 32 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -84,11 +84,13 @@ public void ReturnOpenApiConvertSettingsWhenSettingsFileIsProvided(string filePa
8484
[Fact]
8585
public void ShowCommandGeneratesMermaidDiagramAsMarkdown()
8686
{
87-
var openApiDoc = new OpenApiDocument();
88-
openApiDoc.Info = new OpenApiInfo
87+
var openApiDoc = new OpenApiDocument
8988
{
90-
Title = "Test",
91-
Version = "1.0.0"
89+
Info = new OpenApiInfo
90+
{
91+
Title = "Test",
92+
Version = "1.0.0"
93+
}
9294
};
9395
var stream = new MemoryStream();
9496
using var writer = new StreamWriter(stream);
@@ -101,13 +103,15 @@ public void ShowCommandGeneratesMermaidDiagramAsMarkdown()
101103
}
102104

103105
[Fact]
104-
public void ShowCommandGeneratesMermaidDiagramAsHtml ()
106+
public void ShowCommandGeneratesMermaidDiagramAsHtml()
105107
{
106-
var openApiDoc = new OpenApiDocument();
107-
openApiDoc.Info = new OpenApiInfo
108+
var openApiDoc = new OpenApiDocument
108109
{
109-
Title = "Test",
110-
Version = "1.0.0"
110+
Info = new OpenApiInfo
111+
{
112+
Title = "Test",
113+
Version = "1.0.0"
114+
}
111115
};
112116
var stream = new MemoryStream();
113117
using var writer = new StreamWriter(stream);
@@ -118,7 +122,7 @@ public void ShowCommandGeneratesMermaidDiagramAsHtml ()
118122
var output = reader.ReadToEnd();
119123
Assert.Contains("graph LR", output);
120124
}
121-
125+
122126

123127
[Fact]
124128
public async Task ShowCommandGeneratesMermaidMarkdownFileWithMermaidDiagram()
@@ -131,6 +135,13 @@ public async Task ShowCommandGeneratesMermaidMarkdownFileWithMermaidDiagram()
131135
Assert.Contains("graph LR", output);
132136
}
133137

138+
[Fact]
139+
public async Task ShowCommandGeneratesMermaidHtmlFileWithMermaidDiagram()
140+
{
141+
var filePath = await OpenApiService.ShowOpenApiDocument("UtilityFiles\\SampleOpenApi.yml", null, null, null, new Logger<OpenApiService>(new LoggerFactory()), new CancellationToken());
142+
Assert.True(File.Exists(filePath));
143+
}
144+
134145
[Fact]
135146
public async Task ShowCommandGeneratesMermaidMarkdownFileFromCsdlWithMermaidDiagram()
136147
{
@@ -185,6 +196,7 @@ public async Task TransformCommandConvertsOpenApi()
185196
Assert.NotEmpty(output);
186197
}
187198

199+
188200
[Fact]
189201
public async Task TransformCommandConvertsOpenApiWithDefaultOutputname()
190202
{
@@ -195,6 +207,16 @@ public async Task TransformCommandConvertsOpenApiWithDefaultOutputname()
195207
Assert.NotEmpty(output);
196208
}
197209

210+
[Fact]
211+
public async Task TransformCommandConvertsCsdlWithDefaultOutputname()
212+
{
213+
// create a dummy ILogger instance for testing
214+
await OpenApiService.TransformOpenApiDocument(null, "UtilityFiles\\Todo.xml", null, null, true, null, null, false, null, false, false, null, null, null, new Logger<OpenApiService>(new LoggerFactory()), new CancellationToken());
215+
216+
var output = File.ReadAllText("output.yml");
217+
Assert.NotEmpty(output);
218+
}
219+
198220
[Fact]
199221
public async Task TransformCommandConvertsOpenApiWithDefaultOutputnameAndSwitchFormat()
200222
{

0 commit comments

Comments
 (0)