Skip to content

Commit a350880

Browse files
Copilotbaywet
andauthored
test(reader): cover empty factory inputs
Co-authored-by: baywet <7905502+baywet@users.noreply.github.com>
1 parent d5b8c30 commit a350880

1 file changed

Lines changed: 30 additions & 0 deletions

File tree

test/Microsoft.OpenApi.Tests/Reader/OpenApiModelFactoryTests.cs

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,41 @@
44
using System.IO;
55
using System;
66
using System.Threading;
7+
using Microsoft.OpenApi.YamlReader;
78

89
namespace Microsoft.OpenApi.Tests.Reader;
910

1011
public class OpenApiModelFactoryTests
1112
{
13+
[Fact]
14+
public void LoadReturnsDiagnosticWhenStreamIsEmpty()
15+
{
16+
using var stream = new MemoryStream();
17+
var settings = new OpenApiReaderSettings();
18+
settings.AddYamlReader();
19+
20+
var result = OpenApiDocument.Load(stream, settings: settings);
21+
22+
Assert.Null(result.Document);
23+
var error = Assert.Single(result.Diagnostic.Errors);
24+
Assert.Contains("No documents found", error.Message, StringComparison.Ordinal);
25+
Assert.Equal(OpenApiConstants.Yaml, result.Diagnostic.Format);
26+
}
27+
28+
[Fact]
29+
public void ParseReturnsDiagnosticWhenInputIsEmpty()
30+
{
31+
var settings = new OpenApiReaderSettings();
32+
settings.AddYamlReader();
33+
34+
var result = OpenApiDocument.Parse(string.Empty, settings: settings);
35+
36+
Assert.Null(result.Document);
37+
var error = Assert.Single(result.Diagnostic.Errors);
38+
Assert.Contains("No documents found", error.Message, StringComparison.Ordinal);
39+
Assert.Equal(OpenApiConstants.Yaml, result.Diagnostic.Format);
40+
}
41+
1242
[Fact]
1343
public async Task LoadDocumentWithCircularSchemaPropertyReferencesShouldSucceed()
1444
{

0 commit comments

Comments
 (0)