mirror of
https://github.com/bitwarden/server
synced 2025-12-06 00:03:34 +00:00
* Improve generated OpenAPI files * Nullable * Fmt * Correct powershell command * Fix name * Add some tests * Fmt * Switch to using json naming policy
34 lines
1.2 KiB
C#
34 lines
1.2 KiB
C#
using Bit.SharedWeb.Swagger;
|
|
using Microsoft.OpenApi.Models;
|
|
using Swashbuckle.AspNetCore.SwaggerGen;
|
|
|
|
namespace SharedWeb.Test;
|
|
|
|
public class SourceFileLineOperationFilterTest
|
|
{
|
|
private class DummyController
|
|
{
|
|
public void DummyMethod() { }
|
|
}
|
|
|
|
[Fact]
|
|
public void AddsSourceFileAndLineExtensionsIfAvailable()
|
|
{
|
|
var methodInfo = typeof(DummyController).GetMethod(nameof(DummyController.DummyMethod));
|
|
var operation = new OpenApiOperation();
|
|
var context = new OperationFilterContext(null, null, null, methodInfo);
|
|
var filter = new SourceFileLineOperationFilter();
|
|
filter.Apply(operation, context);
|
|
|
|
Assert.True(operation.Extensions.ContainsKey("x-source-file"));
|
|
Assert.True(operation.Extensions.ContainsKey("x-source-line"));
|
|
var fileExt = operation.Extensions["x-source-file"] as Microsoft.OpenApi.Any.OpenApiString;
|
|
var lineExt = operation.Extensions["x-source-line"] as Microsoft.OpenApi.Any.OpenApiInteger;
|
|
Assert.NotNull(fileExt);
|
|
Assert.NotNull(lineExt);
|
|
|
|
Assert.Equal(11, lineExt.Value);
|
|
Assert.StartsWith("test/SharedWeb.Test/", fileExt.Value);
|
|
}
|
|
}
|