Skip to content

Commit

Permalink
fix: print parsing errors even when comparator throws an exception
Browse files Browse the repository at this point in the history
  • Loading branch information
NextFire committed Sep 3, 2024
1 parent 7acd069 commit 6e72dd3
Showing 1 changed file with 20 additions and 11 deletions.
31 changes: 20 additions & 11 deletions src/Criteo.OpenApi.Comparator.Cli/Program.cs
Original file line number Diff line number Diff line change
Expand Up @@ -40,21 +40,30 @@ public static int Main(string[] args)
return 1;
}

var differences = OpenApiComparator.Compare(
oldOpenApiSpecification, newOpenApiSpecification, out var parsingErrors, options.StrictMode);

if (parsingErrors.Any())
IEnumerable<ParsingError> parsingErrors = null;
try
{
Console.Error.WriteLine("Errors occurred while parsing the OpenAPI specifications:");
foreach (var error in parsingErrors)
var differences = OpenApiComparator.Compare(
oldOpenApiSpecification, newOpenApiSpecification, out parsingErrors, options.StrictMode);
DisplayOutput(differences, options.OutputFormat);
return 0;
}
catch (Exception e)
{
Console.Error.WriteLine($"An error occurred while comparing the OpenAPI specifications: {e}");
return 1;
}
finally
{
if (parsingErrors.Any())
{
Console.Error.WriteLine(error);
Console.Error.WriteLine("Errors occurred while parsing the OpenAPI specifications:");
foreach (var error in parsingErrors)
{
Console.Error.WriteLine(error);
}
}
}

DisplayOutput(differences, options.OutputFormat);

return 0;
}

private static bool TryReadFile(string path, out string fileContent)
Expand Down

0 comments on commit 6e72dd3

Please sign in to comment.