diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 8546a468d..6ada808e4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -43,7 +43,7 @@ jobs: - name: ๐Ÿ› ๏ธ Build run: dotnet build -c Release src/Refitter.sln -p:UseSourceLink=true -p:PackageVersion="${{ env.VERSION }}" -p:Version="${{ env.VERSION }}" - name: ๐Ÿงช Test - run: dotnet test src/Refitter.sln -c Release + run: dotnet test --solution src/Refitter.sln -c Release - name: ๐Ÿ—ณ๏ธ Upload uses: actions/upload-artifact@v5 with: diff --git a/.github/workflows/codecov.yml b/.github/workflows/codecov.yml index bbd7e6ef1..4a42b4378 100644 --- a/.github/workflows/codecov.yml +++ b/.github/workflows/codecov.yml @@ -27,11 +27,11 @@ jobs: build: name: ๐Ÿ‘Œ Verify build runs-on: windows-latest - + steps: - + - name: ๐Ÿ›’ Checkout repository - uses: actions/checkout@v6 + uses: actions/checkout@v6 - uses: actions/setup-dotnet@v5 with: @@ -39,10 +39,10 @@ jobs: 8.0.x 9.0.x 10.0.x - + - name: ๐Ÿงช Test - run: dotnet test src/Refitter.Tests/Refitter.Tests.csproj -c Release --collect:"XPlat Code Coverage" -p:UseSourceLink=true -p:PackageVersion="${{ env.VERSION }}" - + run: dotnet test --project src/Refitter.Tests/Refitter.Tests.csproj -c Release --coverage --coverage-output coverage.cobertura.xml --coverage-output-format xml + - name: ๐Ÿ—ณ๏ธ Upload uses: actions/upload-artifact@v5 with: diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3cce26046..1785cb45c 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -73,31 +73,38 @@ Feature requests are welcome! Please follow the feature request template in `.gi - Verify that the generated code builds successfully - Test coverage should be comprehensive, covering both normal operation and edge cases. - All tests must pass before submitting a pull request. +- **Testing Framework**: The project uses [TUnit](https://github.com/thomhurst/TUnit) instead of xUnit for unit testing, which provides 3x faster test execution. Example test pattern: ```csharp +using FluentAssertions; +using Refitter.Core; +using Refitter.Tests.Build; +using Refitter.Tests.TestUtilities; +using TUnit.Core; + public class MyFeatureTests { private const string OpenApiSpec = @" // Your OpenAPI specification here "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generated_Code_Contains_Expected_Pattern() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("ExpectedPattern"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/README.md b/README.md index 965e27fc9..6562f4f79 100644 --- a/README.md +++ b/README.md @@ -1259,6 +1259,16 @@ Please head to the [Apizr documentation](https://www.apizr.net) to get more. .NET 8.0 or .NET 9.0 +## Testing + +Refitter uses [TUnit](https://github.com/thomhurst/TUnit) as its testing framework instead of xUnit. TUnit was chosen for its superior performance, providing 3x faster test execution compared to xUnit. This significantly improves the developer experience when running the test suite locally and in CI/CD pipelines. + +To run the tests: + +```bash +dotnet test --solution src/Refitter.sln -c Release +``` + ## Contributing Please read our [contribution guidelines](CONTRIBUTING.md) if you'd like to contribute to the project. diff --git a/docs/README.md b/docs/README.md index d23adb795..f86e3adfa 100644 --- a/docs/README.md +++ b/docs/README.md @@ -34,4 +34,8 @@ When contributing to the documentation: 2. Include code examples where appropriate 3. Test your changes locally before submitting 4. Ensure all links are valid and working -5. Update the table of contents if adding new articles \ No newline at end of file +5. Update the table of contents if adding new articles + +## Testing Framework + +Refitter uses [TUnit](https://github.com/thomhurst/TUnit) for unit testing instead of xUnit. TUnit provides significantly faster test execution (3x faster), which improves both local development and CI/CD pipeline performance. When writing tests for new features or bug fixes, use TUnit's `[Test]` attribute instead of xUnit's `[Fact]` or `[Theory]`. \ No newline at end of file diff --git a/global.json b/global.json new file mode 100644 index 000000000..0df134b16 --- /dev/null +++ b/global.json @@ -0,0 +1,10 @@ +{ + "sdk": { + "version": "10.0.0", + "rollForward": "latestFeature", + "testingPlatform": true + }, + "test": { + "runner": "Microsoft.Testing.Platform" + } +} diff --git a/src/Directory.Build.props b/src/Directory.Build.props index e7871a8f5..600e2860c 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -4,6 +4,8 @@ preview enable enable + true + true @@ -37,4 +39,4 @@ true - \ No newline at end of file + diff --git a/src/Refitter.SourceGenerator.Tests/CustomOutputFolderGeneratorTests.cs b/src/Refitter.SourceGenerator.Tests/CustomOutputFolderGeneratorTests.cs index 387e3724c..8a24de37a 100644 --- a/src/Refitter.SourceGenerator.Tests/CustomOutputFolderGeneratorTests.cs +++ b/src/Refitter.SourceGenerator.Tests/CustomOutputFolderGeneratorTests.cs @@ -1,17 +1,17 @@ using FluentAssertions; using Refit; using Refitter.Tests.CustomGenerated; -using Xunit; +using TUnit.Core; namespace Refitter.SourceGenerators.Tests; public class CustomOutputFolderGeneratorTests { - [Fact] + [Test] public void Can_Create_File_In_Custom_Path() => File.Exists("../../../CustomGenerated/CustomGenerated.cs").Should().BeTrue(); - [Fact] + [Test] public void Can_Resolve_Refit_Interface() => RestService.For("https://petstore3.swagger.io/api/v3") .Should() diff --git a/src/Refitter.SourceGenerator.Tests/MultipleInterfaceByTagGeneratorTests.cs b/src/Refitter.SourceGenerator.Tests/MultipleInterfaceByTagGeneratorTests.cs index d9c9442a9..7cc946c6d 100644 --- a/src/Refitter.SourceGenerator.Tests/MultipleInterfaceByTagGeneratorTests.cs +++ b/src/Refitter.SourceGenerator.Tests/MultipleInterfaceByTagGeneratorTests.cs @@ -1,26 +1,26 @@ using FluentAssertions; using Refit; using Refitter.Tests.AdditionalFiles.ByTag; -using Xunit; +using TUnit.Core; namespace Refitter.SourceGenerators.Tests; public class MultipleInterfaceByTagGeneratorTests { - [Theory] - [InlineData(typeof(IPetApi))] - [InlineData(typeof(IUserApi))] - [InlineData(typeof(IStoreApi))] + [Test] + [Arguments(typeof(IPetApi))] + [Arguments(typeof(IUserApi))] + [Arguments(typeof(IStoreApi))] public void Should_Generate_Interface(Type type) => type .Namespace .Should() .Be("Refitter.Tests.AdditionalFiles.ByTag"); - [Theory] - [InlineData(typeof(IPetApi))] - [InlineData(typeof(IUserApi))] - [InlineData(typeof(IStoreApi))] + [Test] + [Arguments(typeof(IPetApi))] + [Arguments(typeof(IUserApi))] + [Arguments(typeof(IStoreApi))] public void Can_Resolve_Refit_Interface(Type type) => RestService.For(type, "https://petstore3.swagger.io/api/v3") .Should() diff --git a/src/Refitter.SourceGenerator.Tests/MultipleInterfaceGeneratorTests.cs b/src/Refitter.SourceGenerator.Tests/MultipleInterfaceGeneratorTests.cs index 83e380afc..ef60daa48 100644 --- a/src/Refitter.SourceGenerator.Tests/MultipleInterfaceGeneratorTests.cs +++ b/src/Refitter.SourceGenerator.Tests/MultipleInterfaceGeneratorTests.cs @@ -1,58 +1,58 @@ using FluentAssertions; using Refit; using Refitter.Tests.AdditionalFiles.ByEndpoint; -using Xunit; +using TUnit.Core; namespace Refitter.SourceGenerators.Tests; public class MultipleInterfaceGeneratorTests { - [Theory] - [InlineData(typeof(IAddPetEndpoint))] - [InlineData(typeof(IUpdatePetEndpoint))] - [InlineData(typeof(IDeletePetEndpoint))] - [InlineData(typeof(ICreateUserEndpoint))] - [InlineData(typeof(IUpdateUserEndpoint))] - [InlineData(typeof(IDeleteUserEndpoint))] - [InlineData(typeof(ILoginUserEndpoint))] - [InlineData(typeof(ILogoutUserEndpoint))] - [InlineData(typeof(IPlaceOrderEndpoint))] - [InlineData(typeof(IGetOrderByIdEndpoint))] - [InlineData(typeof(IDeleteOrderEndpoint))] - [InlineData(typeof(IGetInventoryEndpoint))] - [InlineData(typeof(IGetPetByIdEndpoint))] - [InlineData(typeof(IUploadFileEndpoint))] - [InlineData(typeof(IFindPetsByStatusEndpoint))] - [InlineData(typeof(IFindPetsByTagsEndpoint))] - [InlineData(typeof(IGetUserByNameEndpoint))] - [InlineData(typeof(IUpdatePetWithFormEndpoint))] - [InlineData(typeof(ICreateUsersWithListInputEndpoint))] + [Test] + [Arguments(typeof(IAddPetEndpoint))] + [Arguments(typeof(IUpdatePetEndpoint))] + [Arguments(typeof(IDeletePetEndpoint))] + [Arguments(typeof(ICreateUserEndpoint))] + [Arguments(typeof(IUpdateUserEndpoint))] + [Arguments(typeof(IDeleteUserEndpoint))] + [Arguments(typeof(ILoginUserEndpoint))] + [Arguments(typeof(ILogoutUserEndpoint))] + [Arguments(typeof(IPlaceOrderEndpoint))] + [Arguments(typeof(IGetOrderByIdEndpoint))] + [Arguments(typeof(IDeleteOrderEndpoint))] + [Arguments(typeof(IGetInventoryEndpoint))] + [Arguments(typeof(IGetPetByIdEndpoint))] + [Arguments(typeof(IUploadFileEndpoint))] + [Arguments(typeof(IFindPetsByStatusEndpoint))] + [Arguments(typeof(IFindPetsByTagsEndpoint))] + [Arguments(typeof(IGetUserByNameEndpoint))] + [Arguments(typeof(IUpdatePetWithFormEndpoint))] + [Arguments(typeof(ICreateUsersWithListInputEndpoint))] public void Should_Generate_Interface(Type type) => type .Namespace .Should() .Be("Refitter.Tests.AdditionalFiles.ByEndpoint"); - [Theory] - [InlineData(typeof(IAddPetEndpoint))] - [InlineData(typeof(IUpdatePetEndpoint))] - [InlineData(typeof(IDeletePetEndpoint))] - [InlineData(typeof(ICreateUserEndpoint))] - [InlineData(typeof(IUpdateUserEndpoint))] - [InlineData(typeof(IDeleteUserEndpoint))] - [InlineData(typeof(ILoginUserEndpoint))] - [InlineData(typeof(ILogoutUserEndpoint))] - [InlineData(typeof(IPlaceOrderEndpoint))] - [InlineData(typeof(IGetOrderByIdEndpoint))] - [InlineData(typeof(IDeleteOrderEndpoint))] - [InlineData(typeof(IGetInventoryEndpoint))] - [InlineData(typeof(IGetPetByIdEndpoint))] - [InlineData(typeof(IUploadFileEndpoint))] - [InlineData(typeof(IFindPetsByStatusEndpoint))] - [InlineData(typeof(IFindPetsByTagsEndpoint))] - [InlineData(typeof(IGetUserByNameEndpoint))] - [InlineData(typeof(IUpdatePetWithFormEndpoint))] - [InlineData(typeof(ICreateUsersWithListInputEndpoint))] + [Test] + [Arguments(typeof(IAddPetEndpoint))] + [Arguments(typeof(IUpdatePetEndpoint))] + [Arguments(typeof(IDeletePetEndpoint))] + [Arguments(typeof(ICreateUserEndpoint))] + [Arguments(typeof(IUpdateUserEndpoint))] + [Arguments(typeof(IDeleteUserEndpoint))] + [Arguments(typeof(ILoginUserEndpoint))] + [Arguments(typeof(ILogoutUserEndpoint))] + [Arguments(typeof(IPlaceOrderEndpoint))] + [Arguments(typeof(IGetOrderByIdEndpoint))] + [Arguments(typeof(IDeleteOrderEndpoint))] + [Arguments(typeof(IGetInventoryEndpoint))] + [Arguments(typeof(IGetPetByIdEndpoint))] + [Arguments(typeof(IUploadFileEndpoint))] + [Arguments(typeof(IFindPetsByStatusEndpoint))] + [Arguments(typeof(IFindPetsByTagsEndpoint))] + [Arguments(typeof(IGetUserByNameEndpoint))] + [Arguments(typeof(IUpdatePetWithFormEndpoint))] + [Arguments(typeof(ICreateUsersWithListInputEndpoint))] public void Can_Resolve_Refit_Interface(Type type) => RestService.For(type, "https://petstore3.swagger.io/api/v3") .Should() diff --git a/src/Refitter.SourceGenerator.Tests/OptionalParametersGeneratorTest.cs b/src/Refitter.SourceGenerator.Tests/OptionalParametersGeneratorTest.cs index 0ab440c43..82fa1f64d 100644 --- a/src/Refitter.SourceGenerator.Tests/OptionalParametersGeneratorTest.cs +++ b/src/Refitter.SourceGenerator.Tests/OptionalParametersGeneratorTest.cs @@ -1,20 +1,20 @@ using FluentAssertions; using Refit; using Refitter.Tests.AdditionalFiles.OptionalParameters; -using Xunit; +using TUnit.Core; namespace Refitter.SourceGenerators.Tests; public class OperationalParametersGeneratorTest { - [Fact] + [Test] public void Should_Type_Exist() => typeof(ISwaggerPetstoreWithOptionalParameters) .Namespace .Should() .Be("Refitter.Tests.AdditionalFiles.OptionalParameters"); - [Fact] + [Test] public void Can_Resolve_Refit_Interface() => RestService.For("https://petstore3.swagger.io/api/v3") .Should() diff --git a/src/Refitter.SourceGenerator.Tests/Refitter.SourceGenerator.Tests.csproj b/src/Refitter.SourceGenerator.Tests/Refitter.SourceGenerator.Tests.csproj index e951c87a0..a516f6d35 100644 --- a/src/Refitter.SourceGenerator.Tests/Refitter.SourceGenerator.Tests.csproj +++ b/src/Refitter.SourceGenerator.Tests/Refitter.SourceGenerator.Tests.csproj @@ -3,19 +3,18 @@ net8.0 false + Exe + enable + enable + false Refitter.SourceGenerators.Tests - - - - runtime; build; native; contentfiles; analyzers; buildtransitive - all - + runtime; build; native; contentfiles; analyzers; buildtransitive all @@ -42,9 +41,9 @@ - diff --git a/src/Refitter.SourceGenerator.Tests/SingleInterfaceGeneratorTest.cs b/src/Refitter.SourceGenerator.Tests/SingleInterfaceGeneratorTest.cs index 462062695..225cc9b68 100644 --- a/src/Refitter.SourceGenerator.Tests/SingleInterfaceGeneratorTest.cs +++ b/src/Refitter.SourceGenerator.Tests/SingleInterfaceGeneratorTest.cs @@ -1,20 +1,20 @@ using FluentAssertions; using Refit; using Refitter.Tests.AdditionalFiles.SingeInterface; -using Xunit; +using TUnit.Core; namespace Refitter.SourceGenerators.Tests; public class SingleInterfaceGeneratorTest { - [Fact] + [Test] public void Should_Type_Exist() => typeof(ISwaggerPetstoreInterface) .Namespace .Should() .Be("Refitter.Tests.AdditionalFiles.SingeInterface"); - [Fact] + [Test] public void Can_Resolve_Refit_Interface() => RestService.For("https://petstore3.swagger.io/api/v3") .Should() diff --git a/src/Refitter.SourceGenerator.Tests/UseJsonInheritanceConverterTests.cs b/src/Refitter.SourceGenerator.Tests/UseJsonInheritanceConverterTests.cs index 2e5809069..5a94f7c48 100644 --- a/src/Refitter.SourceGenerator.Tests/UseJsonInheritanceConverterTests.cs +++ b/src/Refitter.SourceGenerator.Tests/UseJsonInheritanceConverterTests.cs @@ -1,21 +1,21 @@ using FluentAssertions; using Refitter.Tests.UseJsonInheritanceConverter; -using Xunit; +using TUnit.Core; namespace Refitter.SourceGenerators.Tests; public class UseJsonInheritanceConverterTests { - [Theory] - [InlineData(typeof(SomeComponent))] + [Test] + [Arguments(typeof(SomeComponent))] public void Should_Generate_JsonInheritanceConverter_Usage(Type type) => type .GetCustomAttributes(typeof(JsonInheritanceConverterAttribute), false) .Should() .HaveCount(1); - [Theory] - [InlineData(typeof(SomeComponent))] + [Test] + [Arguments(typeof(SomeComponent))] public void Should_Generate_JsonInheritanceAttribute_Usage(Type type) => type .GetCustomAttributes(typeof(JsonInheritanceAttribute), false) diff --git a/src/Refitter.SourceGenerator.Tests/UsePolymorphicSerializationTests.cs b/src/Refitter.SourceGenerator.Tests/UsePolymorphicSerializationTests.cs index b2eccb3bb..b2bfb4a03 100644 --- a/src/Refitter.SourceGenerator.Tests/UsePolymorphicSerializationTests.cs +++ b/src/Refitter.SourceGenerator.Tests/UsePolymorphicSerializationTests.cs @@ -1,22 +1,22 @@ using System.Text.Json.Serialization; using FluentAssertions; using Refitter.Tests.UsePolymorphicSerialization; -using Xunit; +using TUnit.Core; namespace Refitter.SourceGenerators.Tests; public class UsePolymorphicSerializationTests { - [Theory] - [InlineData(typeof(SomeComponent))] + [Test] + [Arguments(typeof(SomeComponent))] public void Should_Generate_JsonPolymorphicAttribute_Usage(Type type) => type .GetCustomAttributes(typeof(JsonPolymorphicAttribute), false) .Should() .HaveCount(1); - [Theory] - [InlineData(typeof(SomeComponent))] + [Test] + [Arguments(typeof(SomeComponent))] public void Should_Generate_JsonDerivedTypeAttribute_Usage(Type type) => type .GetCustomAttributes(typeof(JsonDerivedTypeAttribute), false) diff --git a/src/Refitter.Tests/ApizrGeneratorWithMicrosoftHttpResilienceTests.cs b/src/Refitter.Tests/ApizrGeneratorWithMicrosoftHttpResilienceTests.cs index 50b1277ad..f1feeec13 100644 --- a/src/Refitter.Tests/ApizrGeneratorWithMicrosoftHttpResilienceTests.cs +++ b/src/Refitter.Tests/ApizrGeneratorWithMicrosoftHttpResilienceTests.cs @@ -1,6 +1,6 @@ using FluentAssertions; using Refitter.Core; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; @@ -47,7 +47,7 @@ public class ApizrGeneratorWithMicrosoftHttpResilienceTests #region Extended - [Fact] + [Test] public void Can_Generate_Extended_Registration_For_Single_Interface() { string code = ApizrRegistrationGenerator.Generate( @@ -60,7 +60,7 @@ public void Can_Generate_Extended_Registration_For_Single_Interface() code.Should().Contain("AddApizrManagerFor(optionsBuilder)"); } - [Fact] + [Test] public void Can_Generate_Extended_Registration_For_Multiple_Interfaces() { string code = ApizrRegistrationGenerator.Generate( @@ -75,7 +75,7 @@ public void Can_Generate_Extended_Registration_For_Multiple_Interfaces() code.Should().Contain("AddManagerFor()"); } - [Fact] + [Test] public void Can_Generate_With_HttpMessageHandlers() { string code = ApizrRegistrationGenerator.Generate( @@ -89,7 +89,7 @@ public void Can_Generate_With_HttpMessageHandlers() code.Should().Contain("WithDelegatingHandler()"); } - [Fact] + [Test] public void Can_Generate_With_HttpResilience() { string code = ApizrRegistrationGenerator.Generate( @@ -102,7 +102,7 @@ public void Can_Generate_With_HttpResilience() code.Should().Contain("AddStandardResilienceHandler"); } - [Fact] + [Test] public void Can_Generate_Without_TransientErrorHandler() { _extendedSettings.DependencyInjectionSettings!.TransientErrorHandler = TransientErrorHandler.None; @@ -119,7 +119,7 @@ public void Can_Generate_Without_TransientErrorHandler() code.Should().NotContain("Backoff.DecorrelatedJitterBackoffV2"); } - [Fact] + [Test] public void Can_Generate_Without_BaseUrl() { _extendedSettings.DependencyInjectionSettings!.BaseUrl = null; @@ -138,7 +138,7 @@ public void Can_Generate_Without_BaseUrl() #region Static - [Fact] + [Test] public void Can_Generate_Static_Registration_For_Single_Interface() { string code = ApizrRegistrationGenerator.Generate( @@ -151,7 +151,7 @@ public void Can_Generate_Static_Registration_For_Single_Interface() code.Should().Contain("CreateManagerFor(optionsBuilder)"); } - [Fact] + [Test] public void Can_Generate_Static_Registration_For_Multiple_Interfaces() { string code = ApizrRegistrationGenerator.Generate( diff --git a/src/Refitter.Tests/ApizrGeneratorWithPollyTests.cs b/src/Refitter.Tests/ApizrGeneratorWithPollyTests.cs index fe14f89be..fef7e2c4a 100644 --- a/src/Refitter.Tests/ApizrGeneratorWithPollyTests.cs +++ b/src/Refitter.Tests/ApizrGeneratorWithPollyTests.cs @@ -1,6 +1,6 @@ using FluentAssertions; using Refitter.Core; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; @@ -32,7 +32,7 @@ public class ApizrGeneratorWithPollyTests } }; - [Fact] + [Test] public void Can_Generate_Extended_Registration_For_Single_Interface() { string code = ApizrRegistrationGenerator.Generate( @@ -45,7 +45,7 @@ public void Can_Generate_Extended_Registration_For_Single_Interface() code.Should().Contain("AddApizrManagerFor(optionsBuilder)"); } - [Fact] + [Test] public void Can_Generate_Extended_Registration_For_Multiple_Interfaces() { string code = ApizrRegistrationGenerator.Generate( @@ -60,7 +60,7 @@ public void Can_Generate_Extended_Registration_For_Multiple_Interfaces() code.Should().Contain("AddManagerFor()"); } - [Fact] + [Test] public void Can_Generate_With_HttpMessageHandlers() { string code = ApizrRegistrationGenerator.Generate( @@ -75,7 +75,7 @@ public void Can_Generate_With_HttpMessageHandlers() code.Should().Contain("WithDelegatingHandler()"); } - [Fact] + [Test] public void Can_Generate_With_Polly() { string code = ApizrRegistrationGenerator.Generate( @@ -91,7 +91,7 @@ public void Can_Generate_With_Polly() code.Should().Contain("Backoff.DecorrelatedJitterBackoffV2"); } - [Fact] + [Test] public void Can_Generate_Without_Polly() { _extendedSettings.DependencyInjectionSettings!.TransientErrorHandler = TransientErrorHandler.None; @@ -109,7 +109,7 @@ public void Can_Generate_Without_Polly() code.Should().NotContain("Backoff.DecorrelatedJitterBackoffV2"); } - [Fact] + [Test] public void Can_Generate_Without_BaseUrl() { _extendedSettings.DependencyInjectionSettings!.BaseUrl = null; diff --git a/src/Refitter.Tests/ApizrRegistrationGeneratorTests.cs b/src/Refitter.Tests/ApizrRegistrationGeneratorTests.cs index e227bd30a..a3bd7ece7 100644 --- a/src/Refitter.Tests/ApizrRegistrationGeneratorTests.cs +++ b/src/Refitter.Tests/ApizrRegistrationGeneratorTests.cs @@ -1,13 +1,13 @@ using FluentAssertions; using Refitter.Core; using Refitter.Core.Settings; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class ApizrRegistrationGeneratorTests { - [Fact] + [Test] public void Generate_Returns_Empty_String_When_No_Interfaces() { var settings = new RefitGeneratorSettings @@ -20,7 +20,7 @@ public void Generate_Returns_Empty_String_When_No_Interfaces() result.Should().BeEmpty(); } - [Fact] + [Test] public void Generate_Returns_Empty_String_When_Registration_Helper_Disabled() { var settings = new RefitGeneratorSettings @@ -33,7 +33,7 @@ public void Generate_Returns_Empty_String_When_Registration_Helper_Disabled() result.Should().BeEmpty(); } - [Fact] + [Test] public void Generate_Creates_Static_Builder_Without_DependencyInjection() { var settings = new RefitGeneratorSettings @@ -49,7 +49,7 @@ public void Generate_Creates_Static_Builder_Without_DependencyInjection() result.Should().NotContain("IServiceCollection"); } - [Fact] + [Test] public void Generate_Creates_DependencyInjection_Extension_With_Settings() { var settings = new RefitGeneratorSettings @@ -65,7 +65,7 @@ public void Generate_Creates_DependencyInjection_Extension_With_Settings() result.Should().Contain("IServiceCollectionExtensions"); } - [Fact] + [Test] public void Generate_Creates_Registry_For_Multiple_Interfaces() { var settings = new RefitGeneratorSettings @@ -86,7 +86,7 @@ public void Generate_Creates_Registry_For_Multiple_Interfaces() result.Should().Contain("IApizrExtendedCommonOptionsBuilder"); } - [Fact] + [Test] public void Generate_Includes_BaseUrl_When_Configured() { var settings = new RefitGeneratorSettings @@ -105,7 +105,7 @@ public void Generate_Includes_BaseUrl_When_Configured() result.Should().Contain("ApizrDuplicateStrategy.Ignore"); } - [Fact] + [Test] public void Generate_Includes_Polly_Configuration() { var settings = new RefitGeneratorSettings @@ -126,7 +126,7 @@ public void Generate_Includes_Polly_Configuration() result.Should().Contain("using Polly.Extensions.Http;"); } - [Fact] + [Test] public void Generate_Includes_HttpResilience_Configuration() { var settings = new RefitGeneratorSettings @@ -147,7 +147,7 @@ public void Generate_Includes_HttpResilience_Configuration() result.Should().Contain("using Microsoft.Extensions.Http.Resilience;"); } - [Fact] + [Test] public void Generate_Includes_HttpMessageHandlers() { var settings = new RefitGeneratorSettings @@ -166,7 +166,7 @@ public void Generate_Includes_HttpMessageHandlers() result.Should().Contain("WithDelegatingHandler"); } - [Fact] + [Test] public void Generate_Includes_Akavache_Cache_Provider() { var settings = new RefitGeneratorSettings @@ -186,7 +186,7 @@ public void Generate_Includes_Akavache_Cache_Provider() result.Should().Contain("Apizr.Integrations.Akavache"); } - [Fact] + [Test] public void Generate_Includes_MonkeyCache_Cache_Provider() { var settings = new RefitGeneratorSettings @@ -206,7 +206,7 @@ public void Generate_Includes_MonkeyCache_Cache_Provider() result.Should().Contain("Apizr.Integrations.MonkeyCache"); } - [Fact] + [Test] public void Generate_Includes_InMemory_Cache_Provider() { var settings = new RefitGeneratorSettings @@ -226,7 +226,7 @@ public void Generate_Includes_InMemory_Cache_Provider() result.Should().Contain("Apizr.Extensions.Microsoft.Caching"); } - [Fact] + [Test] public void Generate_Includes_DistributedCache_String_Provider() { var settings = new RefitGeneratorSettings @@ -245,7 +245,7 @@ public void Generate_Includes_DistributedCache_String_Provider() result.Should().Contain("WithDistributedCacheHandler"); } - [Fact] + [Test] public void Generate_Includes_DistributedCache_ByteArray_Provider() { var settings = new RefitGeneratorSettings @@ -264,7 +264,7 @@ public void Generate_Includes_DistributedCache_ByteArray_Provider() result.Should().Contain("WithDistributedCacheHandler"); } - [Fact] + [Test] public void Generate_Includes_AutoMapper_Mapping_Provider() { var settings = new RefitGeneratorSettings @@ -285,7 +285,7 @@ public void Generate_Includes_AutoMapper_Mapping_Provider() result.Should().Contain("Apizr.Integrations.AutoMapper"); } - [Fact] + [Test] public void Generate_Includes_Mapster_Mapping_Provider() { var settings = new RefitGeneratorSettings @@ -306,7 +306,7 @@ public void Generate_Includes_Mapster_Mapping_Provider() result.Should().Contain("Apizr.Integrations.Mapster"); } - [Fact] + [Test] public void Generate_Includes_Priority_Support() { var settings = new RefitGeneratorSettings @@ -325,7 +325,7 @@ public void Generate_Includes_Priority_Support() result.Should().Contain("Apizr.Integrations.Fusillade"); } - [Fact] + [Test] public void Generate_Includes_Mediation_Support() { var settings = new RefitGeneratorSettings @@ -346,7 +346,7 @@ public void Generate_Includes_Mediation_Support() result.Should().Contain("Apizr.Integrations.MediatR"); } - [Fact] + [Test] public void Generate_Includes_FileTransfer_With_Mediation() { var settings = new RefitGeneratorSettings @@ -367,7 +367,7 @@ public void Generate_Includes_FileTransfer_With_Mediation() result.Should().Contain("Apizr.Integrations.FileTransfer.MediatR"); } - [Fact] + [Test] public void Generate_Includes_FileTransfer_Without_Mediation() { var settings = new RefitGeneratorSettings @@ -386,7 +386,7 @@ public void Generate_Includes_FileTransfer_Without_Mediation() result.Should().Contain("Apizr.Extensions.Microsoft.FileTransfer"); } - [Fact] + [Test] public void Generate_Uses_Custom_Extension_Method_Name() { var settings = new RefitGeneratorSettings @@ -404,7 +404,7 @@ public void Generate_Uses_Custom_Extension_Method_Name() result.Should().Contain("RegisterMyCustomApi"); } - [Fact] + [Test] public void Generate_Includes_XmlDoc_Comments_When_Enabled() { var settings = new RefitGeneratorSettings @@ -422,7 +422,7 @@ public void Generate_Includes_XmlDoc_Comments_When_Enabled() result.Should().Contain("/// "); } - [Fact] + [Test] public void Generate_Error_Message_For_Extended_Features_Without_DI() { var settings = new RefitGeneratorSettings @@ -441,7 +441,7 @@ public void Generate_Error_Message_For_Extended_Features_Without_DI() result.Should().Contain("DependencyInjectionSettings"); } - [Fact] + [Test] public void Generate_Sanitizes_Title_For_Method_Name() { var settings = new RefitGeneratorSettings diff --git a/src/Refitter.Tests/CustomCSharpGeneratorSettingsTests.cs b/src/Refitter.Tests/CustomCSharpGeneratorSettingsTests.cs index 7ce223434..012939819 100644 --- a/src/Refitter.Tests/CustomCSharpGeneratorSettingsTests.cs +++ b/src/Refitter.Tests/CustomCSharpGeneratorSettingsTests.cs @@ -1,19 +1,18 @@ -using Atc.Test; using FluentAssertions; using Refitter.Core; using Refitter.Tests.Resources; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class CustomCSharpGeneratorSettingsTests { - [Theory] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Default_DateType( SampleOpenSpecifications version, string filename) @@ -25,11 +24,11 @@ public async Task Can_Generate_Default_DateType( generatedCode.Should().Contain(settings.CodeGeneratorSettings!.DateType); } - [Theory] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Default_DateTimeType( SampleOpenSpecifications version, string filename) @@ -41,11 +40,11 @@ public async Task Can_Generate_Default_DateTimeType( generatedCode.Should().Contain(settings.CodeGeneratorSettings!.DateTimeType); } - [Theory] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Default_ArrayType( SampleOpenSpecifications version, string filename) @@ -57,11 +56,11 @@ public async Task Can_Generate_Default_ArrayType( generatedCode.Should().Contain("ICollection<"); } - [Theory] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Custom_DateType( SampleOpenSpecifications version, string filename) @@ -74,11 +73,11 @@ public async Task Can_Generate_Custom_DateType( generatedCode.Should().Contain("DateTime"); } - [Theory] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Custom_DateTimeType( SampleOpenSpecifications version, string filename) @@ -91,11 +90,11 @@ public async Task Can_Generate_Custom_DateTimeType( generatedCode.Should().Contain("DateTime"); } - [Theory] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Custom_ArrayType( SampleOpenSpecifications version, string filename) @@ -108,11 +107,11 @@ public async Task Can_Generate_Custom_ArrayType( generatedCode.Should().Contain("System.Collection.Generic.IList<"); } - [Theory] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_With_ExcludedTypeNames( SampleOpenSpecifications version, string filename) @@ -128,11 +127,11 @@ public async Task Can_Generate_With_ExcludedTypeNames( generatedCode.Should().NotContain("class User"); } - [Theory] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineAutoNSubstituteData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_With_Immutable_Records(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); diff --git a/src/Refitter.Tests/DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests.cs b/src/Refitter.Tests/DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests.cs index cc7bd1d14..44ad64004 100644 --- a/src/Refitter.Tests/DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests.cs +++ b/src/Refitter.Tests/DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests.cs @@ -1,6 +1,6 @@ using FluentAssertions; using Refitter.Core; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; @@ -20,7 +20,7 @@ public class DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests } }; - [Fact] + [Test] public void Can_Generate_For_Multiple_Interfaces() { string code = DependencyInjectionGenerator.Generate( @@ -35,7 +35,7 @@ public void Can_Generate_For_Multiple_Interfaces() code.Should().Contain("AddRefitClient(settings)"); } - [Fact] + [Test] public void Can_Generate_With_HttpMessageHandlers() { string code = DependencyInjectionGenerator.Generate( @@ -50,7 +50,7 @@ public void Can_Generate_With_HttpMessageHandlers() code.Should().Contain("AddHttpMessageHandler()"); } - [Fact] + [Test] public void Can_Generate_With_HttpResilience() { string code = DependencyInjectionGenerator.Generate( @@ -64,7 +64,7 @@ public void Can_Generate_With_HttpResilience() code.Should().Contain("AddStandardResilienceHandler"); } - [Fact] + [Test] public void Can_Generate_Without_TransientErrorHandler() { settings.DependencyInjectionSettings!.TransientErrorHandler = TransientErrorHandler.None; @@ -82,7 +82,7 @@ public void Can_Generate_Without_TransientErrorHandler() code.Should().NotContain("Backoff.DecorrelatedJitterBackoffV2"); } - [Fact] + [Test] public void Can_Generate_Without_BaseUrl() { settings.DependencyInjectionSettings!.BaseUrl = null; diff --git a/src/Refitter.Tests/DependencyInjectionGeneratorWithPollyTests.cs b/src/Refitter.Tests/DependencyInjectionGeneratorWithPollyTests.cs index dadd4608d..2836400cd 100644 --- a/src/Refitter.Tests/DependencyInjectionGeneratorWithPollyTests.cs +++ b/src/Refitter.Tests/DependencyInjectionGeneratorWithPollyTests.cs @@ -1,6 +1,6 @@ using FluentAssertions; using Refitter.Core; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; @@ -22,7 +22,7 @@ public class DependencyInjectionGeneratorWithPollyTests } }; - [Fact] + [Test] public void Can_Generate_For_Multiple_Interfaces() { string code = DependencyInjectionGenerator.Generate( @@ -37,7 +37,7 @@ public void Can_Generate_For_Multiple_Interfaces() code.Should().Contain("AddRefitClient(settings)"); } - [Fact] + [Test] public void Can_Generate_With_HttpMessageHandlers() { string code = DependencyInjectionGenerator.Generate( @@ -52,7 +52,7 @@ public void Can_Generate_With_HttpMessageHandlers() code.Should().Contain("AddHttpMessageHandler()"); } - [Fact] + [Test] public void Can_Generate_With_Polly() { string code = DependencyInjectionGenerator.Generate( @@ -68,7 +68,7 @@ public void Can_Generate_With_Polly() code.Should().Contain("Backoff.DecorrelatedJitterBackoffV2"); } - [Fact] + [Test] public void Can_Generate_Without_Polly() { settings.DependencyInjectionSettings!.TransientErrorHandler = TransientErrorHandler.None; @@ -86,7 +86,7 @@ public void Can_Generate_Without_Polly() code.Should().NotContain("Backoff.DecorrelatedJitterBackoffV2"); } - [Fact] + [Test] public void Can_Generate_Without_BaseUrl() { settings.DependencyInjectionSettings!.BaseUrl = null; diff --git a/src/Refitter.Tests/Examples/AdditionalNamespacesTests.cs b/src/Refitter.Tests/Examples/AdditionalNamespacesTests.cs index e4a3fbd56..deb3b2c56 100644 --- a/src/Refitter.Tests/Examples/AdditionalNamespacesTests.cs +++ b/src/Refitter.Tests/Examples/AdditionalNamespacesTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -60,14 +60,14 @@ public class AdditionalNamespacesTests } "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); @@ -77,7 +77,7 @@ public async Task Can_Build_Generated_Code() .BeTrue(); } - [Fact] + [Test] public async Task Generated_Types_Contains_Additional_Namespaces() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/ApizrTests.cs b/src/Refitter.Tests/Examples/ApizrTests.cs index c820c42b6..2cea0e358 100644 --- a/src/Refitter.Tests/Examples/ApizrTests.cs +++ b/src/Refitter.Tests/Examples/ApizrTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -105,24 +105,24 @@ public class ApizrTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_Nullable_Directive() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("#nullable"); } - [Theory] - [InlineData("title")] - [InlineData("contact")] - [InlineData("description")] + [Test] + [Arguments("title")] + [Arguments("contact")] + [Arguments("description")] public async Task Generates_Nullable_Parameters(string parameterName) { string generatedCode = await GenerateCode(); @@ -130,28 +130,28 @@ public async Task Generates_Nullable_Parameters(string parameterName) generatedCode.Should().NotContain($"string? {parameterName} = default"); } - [Fact] + [Test] public async Task DoesNot_Generate_CancellationToken() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("CancellationToken cancellationToken"); } - [Fact] + [Test] public async Task Generates_RequestOptions_Last() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("[RequestOptions] IApizrRequestOptions options);"); } - [Fact] + [Test] public async Task Generates_An_Overload_Without_Optional_Parameters() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("string id, [RequestOptions] IApizrRequestOptions options);"); } - [Fact] + [Test] public async Task Generates_Dynamic_Querystring_Parameters() { string generatedCode = await GenerateCode(true); @@ -168,7 +168,7 @@ public async Task Generates_Dynamic_Querystring_Parameters() generatedCode.Should().Contain("Description = description;"); } - [Fact] + [Test] public async Task Generates_Dynamic_Querystring_Parameters_ByTag() { string generatedCode = await GenerateCode(true, MultipleInterfaces.ByTag); @@ -176,7 +176,7 @@ public async Task Generates_Dynamic_Querystring_Parameters_ByTag() generatedCode.Should().Contain("public record GetFooDetailsQueryParams"); } - [Fact] + [Test] public async Task Generates_Dynamic_Querystring_Parameters_ByEndpoint() { string generatedCode = await GenerateCode(true, MultipleInterfaces.ByEndpoint); @@ -184,7 +184,7 @@ public async Task Generates_Dynamic_Querystring_Parameters_ByEndpoint() generatedCode.Should().Contain("public record GetFooDetailsQueryParams"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByEndpointTests.cs b/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByEndpointTests.cs index b3b116843..60453dcab 100644 --- a/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByEndpointTests.cs +++ b/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByEndpointTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -46,21 +46,21 @@ public class ArrayTypeReturnMultipleInterfacesByEndpointTests type: 'string' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Returns_IList() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("IList"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByTagTests.cs b/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByTagTests.cs index 1a14ae47a..402df26f8 100644 --- a/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByTagTests.cs +++ b/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByTagTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -46,21 +46,21 @@ public class ArrayTypeReturnMultipleInterfacesByTagTests type: 'string' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Returns_IList() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("IList"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/ArrayTypeReturnTests.cs b/src/Refitter.Tests/Examples/ArrayTypeReturnTests.cs index 8f04b00b2..9fce182ff 100644 --- a/src/Refitter.Tests/Examples/ArrayTypeReturnTests.cs +++ b/src/Refitter.Tests/Examples/ArrayTypeReturnTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -46,21 +46,21 @@ public class ArrayTypeReturnTests type: 'string' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Returns_IList() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("IList"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/CaseSensitiveParametersTests.cs b/src/Refitter.Tests/Examples/CaseSensitiveParametersTests.cs index e6e9255ca..4d866a711 100644 --- a/src/Refitter.Tests/Examples/CaseSensitiveParametersTests.cs +++ b/src/Refitter.Tests/Examples/CaseSensitiveParametersTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -41,24 +41,24 @@ public class CaseSensitiveParametersTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Theory] - [InlineData("Id")] - [InlineData("Title")] - [InlineData("Description")] + [Test] + [Arguments("Id")] + [Arguments("Title")] + [Arguments("Description")] public async Task Generates_AliasAs_For_Parameters(string parameterName) { string generatedCode = await GenerateCode(); generatedCode.Should().Contain($"AliasAs(\"{parameterName}\")"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/CollectionFormatTests.cs b/src/Refitter.Tests/Examples/CollectionFormatTests.cs index 58aa5e77c..fb7722ee2 100644 --- a/src/Refitter.Tests/Examples/CollectionFormatTests.cs +++ b/src/Refitter.Tests/Examples/CollectionFormatTests.cs @@ -3,7 +3,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -61,14 +61,14 @@ public class CollectionFormatTests } "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); @@ -78,12 +78,12 @@ public async Task Can_Build_Generated_Code() .BeTrue(); } - [Theory] - [InlineData(CollectionFormat.Multi, "Query(CollectionFormat.Multi)")] - [InlineData(CollectionFormat.Csv, "Query(CollectionFormat.Csv)")] - [InlineData(CollectionFormat.Ssv, "Query(CollectionFormat.Ssv)")] - [InlineData(CollectionFormat.Tsv, "Query(CollectionFormat.Tsv)")] - [InlineData(CollectionFormat.Pipes, "Query(CollectionFormat.Pipes)")] + [Test] + [Arguments(CollectionFormat.Multi, "Query(CollectionFormat.Multi)")] + [Arguments(CollectionFormat.Csv, "Query(CollectionFormat.Csv)")] + [Arguments(CollectionFormat.Ssv, "Query(CollectionFormat.Ssv)")] + [Arguments(CollectionFormat.Tsv, "Query(CollectionFormat.Tsv)")] + [Arguments(CollectionFormat.Pipes, "Query(CollectionFormat.Pipes)")] public async Task Generated_Code_Contains_Expected_Collection_Format(CollectionFormat format, string expectedAttribute) { string generatedCode = await GenerateCode(format); diff --git a/src/Refitter.Tests/Examples/ColonsInPathTests.cs b/src/Refitter.Tests/Examples/ColonsInPathTests.cs index f27644c0b..0b6cc83eb 100644 --- a/src/Refitter.Tests/Examples/ColonsInPathTests.cs +++ b/src/Refitter.Tests/Examples/ColonsInPathTests.cs @@ -3,7 +3,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -44,14 +44,14 @@ their ids. format: uuid "; - [Fact] + [Test] public async Task Can_Generate_Code() { var generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_OperationName_Without_Colons() { var generatedCode = await GenerateCode(); @@ -60,7 +60,7 @@ public async Task Generates_OperationName_Without_Colons() generatedCode.Should().Contain("\"/orders/{orderId}/:orderItems/{orderItemId}\""); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { var generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/CustomCodeGeneratorWithDateTimeTests.cs b/src/Refitter.Tests/Examples/CustomCodeGeneratorWithDateTimeTests.cs index d26de3236..70490497a 100644 --- a/src/Refitter.Tests/Examples/CustomCodeGeneratorWithDateTimeTests.cs +++ b/src/Refitter.Tests/Examples/CustomCodeGeneratorWithDateTimeTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -72,35 +72,35 @@ public class CustomCodeGeneratorWithDateTimeTests } """; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task GeneratedCode_Contains_TimeSpan_Parameter() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("[Query] System.TimeSpan"); } - [Fact] + [Test] public async Task GeneratedCode_Contains_DateTime_Parameter() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("System.DateTime"); } - [Fact] + [Test] public async Task GeneratedCode_NotContains_DateTimeOffset_Parameter() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("System.DateTimeOffset"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/CustomDateFormatTests.cs b/src/Refitter.Tests/Examples/CustomDateFormatTests.cs index e5028cd86..46cd973ad 100644 --- a/src/Refitter.Tests/Examples/CustomDateFormatTests.cs +++ b/src/Refitter.Tests/Examples/CustomDateFormatTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -73,28 +73,28 @@ public class CustomDateFormatTests "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task GeneratedCode_Contains_Date_Format_String() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain(@"[Query(Format = ""yyyy-MM-ddThh:mm:ssZ"")] "); } - [Fact] + [Test] public async Task GeneratedCode_Contains_TimeSpan_Parameter() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("[Query] System.TimeSpan"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/DefaultResponseObjectTests.cs b/src/Refitter.Tests/Examples/DefaultResponseObjectTests.cs index ecab22df2..bc3908b9c 100644 --- a/src/Refitter.Tests/Examples/DefaultResponseObjectTests.cs +++ b/src/Refitter.Tests/Examples/DefaultResponseObjectTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -112,14 +112,14 @@ public class DefaultResponseObjectTests type: 'string' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); @@ -129,7 +129,7 @@ public async Task Can_Build_Generated_Code() .BeTrue(); } - [Fact] + [Test] public async Task Should_Generate_Default_Response_Return_Types() { string generatedCode = await GenerateCode(); @@ -137,7 +137,7 @@ public async Task Should_Generate_Default_Response_Return_Types() generatedCode.Should().Contain("Task> GetUsersWithDefault();"); } - [Fact] + [Test] public async Task Should_Generate_Range_Response_Return_Types() { string generatedCode = await GenerateCode(); @@ -145,7 +145,7 @@ public async Task Should_Generate_Range_Response_Return_Types() generatedCode.Should().Contain("Task> GetCategoriesWithRange();"); } - [Fact] + [Test] public async Task Should_Generate_User_Contract() { string generatedCode = await GenerateCode(); @@ -155,7 +155,7 @@ public async Task Should_Generate_User_Contract() generatedCode.Should().Contain("public string Email { get; set; }"); } - [Fact] + [Test] public async Task Should_Generate_Category_Contract() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/DeprecatedEndpointTests.cs b/src/Refitter.Tests/Examples/DeprecatedEndpointTests.cs index 3cacbbaa1..c683b77f1 100644 --- a/src/Refitter.Tests/Examples/DeprecatedEndpointTests.cs +++ b/src/Refitter.Tests/Examples/DeprecatedEndpointTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -58,21 +58,21 @@ public class DeprecatedEndpointTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Should_Contain_Obsolete_Attribute() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("[System.Obsolete]"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/DeprecatedEndpointsSkippedTests.cs b/src/Refitter.Tests/Examples/DeprecatedEndpointsSkippedTests.cs index 0ab2c84f6..e59c5b3fe 100644 --- a/src/Refitter.Tests/Examples/DeprecatedEndpointsSkippedTests.cs +++ b/src/Refitter.Tests/Examples/DeprecatedEndpointsSkippedTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -58,35 +58,35 @@ public class DeprecatedEndpointsSkippedTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Should_NotContain_Obsolete_Attribute() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("[System.Obsolete]"); } - [Fact] + [Test] public async Task Should_NotContain_GetAllBars() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("GetAllBars"); } - [Fact] + [Test] public async Task Should_NotContain_GetBarDetails() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("GetBarDetails"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceByTagEndpointsSkippedTests.cs b/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceByTagEndpointsSkippedTests.cs index fedaa4a94..0cc2746ed 100644 --- a/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceByTagEndpointsSkippedTests.cs +++ b/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceByTagEndpointsSkippedTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -58,35 +58,35 @@ public class DeprecatedMultipleInterfaceByTagEndpointsSkippedTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Should_NotContain_Obsolete_Attribute() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("[System.Obsolete]"); } - [Fact] + [Test] public async Task Should_NotContain_GetAllBars() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("GetAllBarsEndpoint"); } - [Fact] + [Test] public async Task Should_NotContain_GetBarDetails() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("GetBarDetailsEndpoint"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceEndpointsSkippedTests.cs b/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceEndpointsSkippedTests.cs index ed24af98c..1e95c5927 100644 --- a/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceEndpointsSkippedTests.cs +++ b/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceEndpointsSkippedTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -58,35 +58,35 @@ public class DeprecatedMultipleInterfaceEndpointsSkippedTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Should_NotContain_Obsolete_Attribute() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("[System.Obsolete]"); } - [Fact] + [Test] public async Task Should_NotContain_GetAllBars() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("GetAllBarsEndpoint"); } - [Fact] + [Test] public async Task Should_NotContain_GetBarDetails() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("GetBarDetailsEndpoint"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/DynamicQueryStringParametersEdgeCasesTests.cs b/src/Refitter.Tests/Examples/DynamicQueryStringParametersEdgeCasesTests.cs index 7cb2133b0..02b94139d 100644 --- a/src/Refitter.Tests/Examples/DynamicQueryStringParametersEdgeCasesTests.cs +++ b/src/Refitter.Tests/Examples/DynamicQueryStringParametersEdgeCasesTests.cs @@ -2,13 +2,13 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; public class DynamicQueryStringParametersEdgeCasesTests { - [Fact] + [Test] public async Task Dynamic_QueryString_With_Escaped_String_Defaults() { const string openApiSpec = @@ -69,7 +69,7 @@ public async Task Dynamic_QueryString_With_Escaped_String_Defaults() generatedCode.Should().Contain("string? BackslashString { get; set; } = \"path\\\\to\\\\file\""); } - [Fact] + [Test] public async Task Dynamic_QueryString_With_All_Escape_Characters() { const string openApiSpec = @@ -140,7 +140,7 @@ public async Task Dynamic_QueryString_With_All_Escape_Characters() generatedCode.Should().Contain("string? TabString { get; set; } = \"col1\\tcol2\""); } - [Fact] + [Test] public async Task Dynamic_QueryString_With_Float_And_Decimal_Defaults() { const string openApiSpec = @@ -203,7 +203,7 @@ public async Task Dynamic_QueryString_With_Float_And_Decimal_Defaults() generatedCode.Should().Contain("decimal? DecimalValue { get; set; } = 99.99m"); } - [Fact] + [Test] public async Task Dynamic_QueryString_With_Boolean_Defaults() { const string openApiSpec = @@ -264,7 +264,7 @@ public async Task Dynamic_QueryString_With_Boolean_Defaults() generatedCode.Should().Contain("bool? IsDisabled { get; set; } = false"); } - [Fact] + [Test] public async Task Dynamic_QueryString_With_Integer_Defaults() { const string openApiSpec = @@ -327,7 +327,7 @@ public async Task Dynamic_QueryString_With_Integer_Defaults() generatedCode.Should().Contain("long? LongValue { get; set; } = 9999"); } - [Fact] + [Test] public async Task Dynamic_QueryString_Generated_Code_Should_Build() { const string openApiSpec = @@ -396,7 +396,7 @@ public async Task Dynamic_QueryString_Generated_Code_Should_Build() BuildHelper.BuildCSharp(generatedCode).Should().BeTrue(); } - [Fact] + [Test] public async Task Dynamic_QueryString_With_Mixed_Escape_Characters() { const string openApiSpec = @@ -447,7 +447,7 @@ public async Task Dynamic_QueryString_With_Mixed_Escape_Characters() generatedCode.Should().Contain("string? ComplexString { get; set; } = \"path\\\\to\\\\file with \\\"quotes\\\"\\nand newlines\""); } - [Fact] + [Test] public async Task Dynamic_QueryString_With_Long_And_ULong_Defaults() { const string openApiSpec = @@ -510,7 +510,7 @@ public async Task Dynamic_QueryString_With_Long_And_ULong_Defaults() generatedCode.Should().Contain("ulong? UlongValue { get; set; } = 5000000000UL"); } - [Fact] + [Test] public async Task Dynamic_QueryString_With_Double_Integer_Value() { const string openApiSpec = diff --git a/src/Refitter.Tests/Examples/DynamicQueryStringParametersWithDefaultValuesTests.cs b/src/Refitter.Tests/Examples/DynamicQueryStringParametersWithDefaultValuesTests.cs index ac838a9eb..4cbced9c8 100644 --- a/src/Refitter.Tests/Examples/DynamicQueryStringParametersWithDefaultValuesTests.cs +++ b/src/Refitter.Tests/Examples/DynamicQueryStringParametersWithDefaultValuesTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -90,14 +90,14 @@ public class DynamicQueryStringParametersWithDefaultValuesTests } """; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generated_Code_Should_Have_Optional_Parameters_With_Default_Values() { string generatedCode = await GenerateCode(); @@ -106,7 +106,7 @@ public async Task Generated_Code_Should_Have_Optional_Parameters_With_Default_Va generatedCode.Should().Contain("string? Filter { get; set; } = \"active\""); } - [Fact] + [Test] public async Task Generated_Code_Should_Have_Required_Parameters_Without_Defaults() { string generatedCode = await GenerateCode(); @@ -116,7 +116,7 @@ public async Task Generated_Code_Should_Have_Required_Parameters_Without_Default generatedCode.Should().NotContain("System.DateTimeOffset End { get; set; } ="); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/FilterByPathTests.cs b/src/Refitter.Tests/Examples/FilterByPathTests.cs index 34ae4d7d9..779169fea 100644 --- a/src/Refitter.Tests/Examples/FilterByPathTests.cs +++ b/src/Refitter.Tests/Examples/FilterByPathTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -56,14 +56,14 @@ public class FilterByPathTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_Methods() { string generatedCode = await GenerateCode(); @@ -73,7 +73,7 @@ public async Task Generates_Methods() generatedCode.Should().Contain("\"/foo/{id}\""); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/FilterByTagsTests.cs b/src/Refitter.Tests/Examples/FilterByTagsTests.cs index 18c9fa807..5ea847b12 100644 --- a/src/Refitter.Tests/Examples/FilterByTagsTests.cs +++ b/src/Refitter.Tests/Examples/FilterByTagsTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -65,14 +65,14 @@ public class FilterByTagsTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_BarAndBaz_Methods() { string generatedCode = await GenerateCode(); @@ -82,7 +82,7 @@ public async Task Generates_BarAndBaz_Methods() generatedCode.Should().NotContain("/foo"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/FormDataParameterCasingTests.cs b/src/Refitter.Tests/Examples/FormDataParameterCasingTests.cs index 425c82138..25e3e34cc 100644 --- a/src/Refitter.Tests/Examples/FormDataParameterCasingTests.cs +++ b/src/Refitter.Tests/Examples/FormDataParameterCasingTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -60,28 +60,28 @@ public class FormDataParameterCasingTests } "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); BuildHelper.BuildCSharp(generatedCode).Should().BeTrue(); } - [Fact] + [Test] public async Task Generated_Code_Contains_Multipart_Attribute() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("[Multipart]"); } - [Fact] + [Test] public async Task FormData_Parameters_Should_Have_AliasAs_Attribute() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/IncludeInheritanceHierarchyTests.cs b/src/Refitter.Tests/Examples/IncludeInheritanceHierarchyTests.cs index 4ef02f953..fbbcfc04f 100644 --- a/src/Refitter.Tests/Examples/IncludeInheritanceHierarchyTests.cs +++ b/src/Refitter.Tests/Examples/IncludeInheritanceHierarchyTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples { @@ -58,16 +58,16 @@ public class IncludeInheritanceHierarchyTests additionalProperties: false "; - [Theory] - [InlineData(true)] - [InlineData(false)] + [Test] + [Arguments(true)] + [Arguments(false)] public async Task Can_Generate_Code(bool includeHierarchy) { string generatedCode = await GenerateCode(includeHierarchy); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Removes_Unreferenced_Schema() { string generatedCode = await GenerateCode(includeHierarchy: false); @@ -77,7 +77,7 @@ public async Task Removes_Unreferenced_Schema() generatedCode.Should().Contain("class A"); } - [Fact] + [Test] public async Task Keeps_All_Union_Cases_Schema() { string generatedCode = await GenerateCode(includeHierarchy: true); @@ -87,9 +87,9 @@ public async Task Keeps_All_Union_Cases_Schema() generatedCode.Should().Contain("class A"); } - [Theory] - [InlineData(true)] - [InlineData(false)] + [Test] + [Arguments(true)] + [Arguments(false)] public async Task Can_Build_Generated_Code(bool includeHierarchy) { string generatedCode = await GenerateCode(includeHierarchy); diff --git a/src/Refitter.Tests/Examples/InlineJsonConvertersTests.cs b/src/Refitter.Tests/Examples/InlineJsonConvertersTests.cs index f7fc0d39a..74fcc5d58 100644 --- a/src/Refitter.Tests/Examples/InlineJsonConvertersTests.cs +++ b/src/Refitter.Tests/Examples/InlineJsonConvertersTests.cs @@ -3,7 +3,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -70,14 +70,14 @@ public class InlineJsonConvertersTests } "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); @@ -87,7 +87,7 @@ public async Task Can_Build_Generated_Code() .BeTrue(); } - [Fact] + [Test] public async Task Generated_Code_Contains_JsonConverter_By_Default() { string generatedCode = await GenerateCode(inlineJsonConverters: true); @@ -99,7 +99,7 @@ public async Task Generated_Code_Contains_JsonConverter_By_Default() } } - [Fact] + [Test] public async Task Generated_Code_Does_Not_Contain_JsonConverter_When_Disabled() { string generatedCode = await GenerateCode(inlineJsonConverters: false); @@ -112,7 +112,7 @@ public async Task Generated_Code_Does_Not_Contain_JsonConverter_When_Disabled() } } - [Fact] + [Test] public async Task Generated_Code_Without_JsonConverter_Can_Build() { string generatedCode = await GenerateCode(inlineJsonConverters: false); diff --git a/src/Refitter.Tests/Examples/IntegerFormatTests.cs b/src/Refitter.Tests/Examples/IntegerFormatTests.cs index 1b4d5cf25..d7ab484df 100644 --- a/src/Refitter.Tests/Examples/IntegerFormatTests.cs +++ b/src/Refitter.Tests/Examples/IntegerFormatTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -189,35 +189,35 @@ public class IntegerFormatTests } """; - [Fact] + [Test] public async Task Default_Generates_Integer_Without_Format_As_Int() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("int IntegerWithoutFormat"); } - [Fact] + [Test] public async Task Can_Generate_Integer_Without_Format_As_Long() { string generatedCode = await GenerateCodeWithLongIntegers(); generatedCode.Should().Contain("long IntegerWithoutFormat"); } - [Fact] + [Test] public async Task Always_Respects_Explicit_Int32_Format() { string generatedCode = await GenerateCodeWithLongIntegers(); generatedCode.Should().Contain("int IntegerWithInt32Format"); } - [Fact] + [Test] public async Task Always_Respects_Explicit_Int64_Format() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("long IntegerWithInt64Format"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code_With_Default() { string generatedCode = await GenerateCode(); @@ -227,7 +227,7 @@ public async Task Can_Build_Generated_Code_With_Default() .BeTrue(); } - [Fact] + [Test] public async Task Can_Build_Generated_Code_With_Long() { string generatedCode = await GenerateCodeWithLongIntegers(); diff --git a/src/Refitter.Tests/Examples/KebabCaseTests.cs b/src/Refitter.Tests/Examples/KebabCaseTests.cs index dd1d3c5ec..f8645d518 100644 --- a/src/Refitter.Tests/Examples/KebabCaseTests.cs +++ b/src/Refitter.Tests/Examples/KebabCaseTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -51,21 +51,21 @@ public class KebabCaseTests type: 'string' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Replaces_KababCase_Parameters_With_PascalCase() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("string job_id"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/KeepSchemaPatternsTests.cs b/src/Refitter.Tests/Examples/KeepSchemaPatternsTests.cs index 51e89c551..3cc039122 100644 --- a/src/Refitter.Tests/Examples/KeepSchemaPatternsTests.cs +++ b/src/Refitter.Tests/Examples/KeepSchemaPatternsTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -114,14 +114,14 @@ public class KeepSchemaPatternsTests additionalProperties: false "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Keeps_Unreferenced_Schema() { string generatedCode = await GenerateCode(); @@ -133,7 +133,7 @@ public async Task Keeps_Unreferenced_Schema() generatedCode.Should().Contain("class Metadata"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/MultiPartFormDataArrayTests.cs b/src/Refitter.Tests/Examples/MultiPartFormDataArrayTests.cs index 2a372590f..81a66d9a1 100644 --- a/src/Refitter.Tests/Examples/MultiPartFormDataArrayTests.cs +++ b/src/Refitter.Tests/Examples/MultiPartFormDataArrayTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -57,14 +57,14 @@ public class MultiPartFormDataArrayTests } "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); @@ -74,7 +74,7 @@ public async Task Can_Build_Generated_Code() .BeTrue(); } - [Fact] + [Test] public async Task Generated_Code_Contains_MultiPart_Attribute() { string generatedCode = await GenerateCode(); @@ -82,7 +82,7 @@ public async Task Generated_Code_Contains_MultiPart_Attribute() generatedCode.Should().NotContain("Content-Type: multipart/form-data"); } - [Fact] + [Test] public async Task Generated_Code_Uses_IEnumerable_StreamPart_For_File_Array() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/MultiPartFormDataTests.cs b/src/Refitter.Tests/Examples/MultiPartFormDataTests.cs index ef86399cb..6c4f513bf 100644 --- a/src/Refitter.Tests/Examples/MultiPartFormDataTests.cs +++ b/src/Refitter.Tests/Examples/MultiPartFormDataTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -95,14 +95,14 @@ public class MultiPartFormDataTests } "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); @@ -112,7 +112,7 @@ public async Task Can_Build_Generated_Code() .BeTrue(); } - [Fact] + [Test] public async Task Generated_Code_Contains_MultiPart_Attribute() { string generatedCode = await GenerateCode(); @@ -120,7 +120,7 @@ public async Task Generated_Code_Contains_MultiPart_Attribute() generatedCode.Should().NotContain("Content-Type: multipart/form-data"); } - [Fact] + [Test] public async Task Generated_Code_Contains_Correct_Parameters() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointTests.cs b/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointTests.cs index 070923c92..ff085d70b 100644 --- a/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointTests.cs +++ b/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -104,42 +104,42 @@ public class MultipleInterfacesByEndpointTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_IGetAllFooEndpoint() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IGetAllFoosEndpoint"); } - [Fact] + [Test] public async Task Generates_IGetFooDetailsEndpoint() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IGetFooDetailsEndpoint"); } - [Fact] + [Test] public async Task Generates_IGetAllBarEndpoint() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IGetAllBarsEndpoint"); } - [Fact] + [Test] public async Task Generates_IGetBarDetailsEndpoint() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IGetBarDetailsEndpoint"); } - [Fact] + [Test] public async Task Generates_Dynamic_Querystring_Parameters() { string generatedCode = await GenerateCode(true); @@ -148,7 +148,7 @@ public async Task Generates_Dynamic_Querystring_Parameters() generatedCode.Should().Contain("GetBarDetailsQueryParams"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithIoCTests.cs b/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithIoCTests.cs index 5ec1fce08..109d66de4 100644 --- a/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithIoCTests.cs +++ b/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithIoCTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -38,35 +38,35 @@ public class MultipleInterfacesByEndpointWithIoCTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_IDeleteFooEndpoint() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IDeleteFooEndpoint"); } - [Fact] + [Test] public async Task Generates_IDeleteBarEndpoint() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IDeleteBarEndpoint"); } - [Fact] + [Test] public async Task Generates_IServiceCollectionExtensions() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("static partial class IServiceCollectionExtensions"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithOperationNameTests.cs b/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithOperationNameTests.cs index bde31692b..9e074bf32 100644 --- a/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithOperationNameTests.cs +++ b/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithOperationNameTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -104,42 +104,42 @@ public class MultipleInterfacesByEndpointWithOperationNameTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_IGetAllFooEndpoint() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IGetAllFoosEndpoint"); } - [Fact] + [Test] public async Task Generates_IGetFooDetailsEndpoint() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IGetFooDetailsEndpoint"); } - [Fact] + [Test] public async Task Generates_IGetAllBarEndpoint() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IGetAllBarsEndpoint"); } - [Fact] + [Test] public async Task Generates_IGetBarDetailsEndpoint() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IGetBarDetailsEndpoint"); } - [Fact] + [Test] public async Task Generates_Dynamic_Querystring_Parameters() { string generatedCode = await GenerateCode(true); @@ -148,14 +148,14 @@ public async Task Generates_Dynamic_Querystring_Parameters() generatedCode.Should().Contain("GetBarDetailsQueryParams"); } - [Fact] + [Test] public async Task Methods_Name_ExecuteAsync() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("ExecuteAsync"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/MultipleInterfacesByTagsTests.cs b/src/Refitter.Tests/Examples/MultipleInterfacesByTagsTests.cs index 080684f46..9579ca222 100644 --- a/src/Refitter.Tests/Examples/MultipleInterfacesByTagsTests.cs +++ b/src/Refitter.Tests/Examples/MultipleInterfacesByTagsTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -115,28 +115,28 @@ public class MultipleInterfacesByTagsTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_Foo_Interface() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IFooApi"); } - [Fact] + [Test] public async Task Generates_Bar_Interface() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IBarApi"); } - [Fact] + [Test] public async Task Generates_Dynamic_Querystring_Parameters() { string generatedCode = await GenerateCode(true); @@ -145,7 +145,7 @@ public async Task Generates_Dynamic_Querystring_Parameters() generatedCode.Should().Contain("GetBarDetailsQueryParams"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/MultipleSuccessResponsesTests.cs b/src/Refitter.Tests/Examples/MultipleSuccessResponsesTests.cs index 700c0df91..226577e90 100644 --- a/src/Refitter.Tests/Examples/MultipleSuccessResponsesTests.cs +++ b/src/Refitter.Tests/Examples/MultipleSuccessResponsesTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -57,21 +57,21 @@ public class MultipleSuccessResponsesTests type: 'string' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Has_No_Duplicate_Accept_Headers() { string generatedCode = await GenerateCode(); generatedCode.Should().NotContain("[Headers(\"Accept: application/json, application/json\")]"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/NewlineInParameterDescriptionJsonTests.cs b/src/Refitter.Tests/Examples/NewlineInParameterDescriptionJsonTests.cs index 160d824df..46ca59639 100644 --- a/src/Refitter.Tests/Examples/NewlineInParameterDescriptionJsonTests.cs +++ b/src/Refitter.Tests/Examples/NewlineInParameterDescriptionJsonTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -57,14 +57,14 @@ public class NewlineInParameterDescriptionJsonTests } """; - [Fact] + [Test] public async Task Can_Generate_Code() { var generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Newlines_In_Parameter_Description_Are_Properly_Formatted() { var generatedCode = await GenerateCode(); @@ -74,7 +74,7 @@ public async Task Newlines_In_Parameter_Description_Are_Properly_Formatted() generatedCode.Should().Contain("/// If set to 'only', the result will only include deleted dialogs"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { var generatedCode = await GenerateCode(); @@ -84,7 +84,7 @@ public async Task Can_Build_Generated_Code() .BeTrue(); } - [Fact] + [Test] public async Task Newlines_In_QueryParams_Class_Description_Are_Properly_Formatted() { var generatedCode = await GenerateCodeWithDynamicQuerystring(); @@ -96,7 +96,7 @@ public async Task Newlines_In_QueryParams_Class_Description_Are_Properly_Formatt generatedCode.Should().Contain("/// If set to 'only', the result will only include deleted dialogs"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code_With_DynamicQuerystring() { var generatedCode = await GenerateCodeWithDynamicQuerystring(); diff --git a/src/Refitter.Tests/Examples/NewlineInParameterDescriptionYamlTests.cs b/src/Refitter.Tests/Examples/NewlineInParameterDescriptionYamlTests.cs index c15526692..56c716721 100644 --- a/src/Refitter.Tests/Examples/NewlineInParameterDescriptionYamlTests.cs +++ b/src/Refitter.Tests/Examples/NewlineInParameterDescriptionYamlTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -42,14 +42,14 @@ public class NewlineInParameterDescriptionYamlTests type: object "; - [Fact] + [Test] public async Task Can_Generate_Code() { var generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Newlines_In_Parameter_Description_Are_Properly_Formatted() { var generatedCode = await GenerateCode(); @@ -59,7 +59,7 @@ public async Task Newlines_In_Parameter_Description_Are_Properly_Formatted() generatedCode.Should().Contain("/// If set to 'only', the result will only include deleted dialogs"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { var generatedCode = await GenerateCode(); @@ -69,7 +69,7 @@ public async Task Can_Build_Generated_Code() .BeTrue(); } - [Fact] + [Test] public async Task Newlines_In_QueryParams_Class_Description_Are_Properly_Formatted() { var generatedCode = await GenerateCodeWithDynamicQuerystring(); @@ -80,7 +80,7 @@ public async Task Newlines_In_QueryParams_Class_Description_Are_Properly_Formatt generatedCode.Should().Contain("/// If set to 'only', the result will only include deleted dialogs"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code_With_DynamicQuerystring() { var generatedCode = await GenerateCodeWithDynamicQuerystring(); diff --git a/src/Refitter.Tests/Examples/NoContentApiResponseTests.cs b/src/Refitter.Tests/Examples/NoContentApiResponseTests.cs index 5e2418c07..ea6919b06 100644 --- a/src/Refitter.Tests/Examples/NoContentApiResponseTests.cs +++ b/src/Refitter.Tests/Examples/NoContentApiResponseTests.cs @@ -3,7 +3,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -54,14 +54,14 @@ their ids. format: uuid "; - [Fact] + [Test] public async Task Can_Generate_Code() { var generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_IApiResponse_For_NoContent() { var generatedCode = await GenerateCode(); @@ -69,7 +69,7 @@ public async Task Generates_IApiResponse_For_NoContent() generatedCode.Should().Contain("Task"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { var generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/OctetStreamBodyTests.cs b/src/Refitter.Tests/Examples/OctetStreamBodyTests.cs index 83ae3bb22..17fb0bf7a 100644 --- a/src/Refitter.Tests/Examples/OctetStreamBodyTests.cs +++ b/src/Refitter.Tests/Examples/OctetStreamBodyTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -43,28 +43,28 @@ public class OctetStreamBodyTests description: successful operation "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_Pet_Interface() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("partial interface IPetApi"); } - [Fact] + [Test] public async Task Generates_StreamPart_Parameter() { string generatedCode = await GenerateCode(true); generatedCode.Should().Contain("long petId, [Query] string additionalMetadata, StreamPart body"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/OpenApiUrlTests.cs b/src/Refitter.Tests/Examples/OpenApiUrlTests.cs index 10713f1e0..09bc785d6 100644 --- a/src/Refitter.Tests/Examples/OpenApiUrlTests.cs +++ b/src/Refitter.Tests/Examples/OpenApiUrlTests.cs @@ -3,21 +3,21 @@ using FluentAssertions; using Refitter.Core; using Refitter.Tests.Build; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; public class OpenApiUrlTests { - [Theory] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/api-with-examples.json")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/callback-example.json")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/link-example.json")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore-expanded.json")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/uspto.json")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/hubspot-events.json")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/hubspot-webhooks.json")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/ingram-micro.json")] + [Test] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/api-with-examples.json")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/callback-example.json")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/link-example.json")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore-expanded.json")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/uspto.json")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/hubspot-events.json")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/hubspot-webhooks.json")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/ingram-micro.json")] public async Task Can_Build_Generated_Code_From_OpenApi_v3_Url_Json(string url) { var settings = new RefitGeneratorSettings { OpenApiPath = url }; @@ -29,12 +29,12 @@ public async Task Can_Build_Generated_Code_From_OpenApi_v3_Url_Json(string url) .BeTrue(url); } - [Theory] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/api-with-examples.yaml")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/callback-example.yaml")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/link-example.yaml")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore-expanded.yaml")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/uspto.yaml")] + [Test] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/api-with-examples.yaml")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/callback-example.yaml")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/link-example.yaml")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore-expanded.yaml")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/uspto.yaml")] public async Task Can_Build_Generated_Code_From_OpenApi_v3_Url_Yaml(string url) { var settings = new RefitGeneratorSettings { OpenApiPath = url }; diff --git a/src/Refitter.Tests/Examples/OperationIdWithInvalidFirstCharTests.cs b/src/Refitter.Tests/Examples/OperationIdWithInvalidFirstCharTests.cs index 2f8358948..7e418da6d 100644 --- a/src/Refitter.Tests/Examples/OperationIdWithInvalidFirstCharTests.cs +++ b/src/Refitter.Tests/Examples/OperationIdWithInvalidFirstCharTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -30,21 +30,21 @@ public class OperationIdWithInvalidFirstCharTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Adds_Underscore_At_Beginning_With_Ivalid_Methode_Name() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("_2fa"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/OperationIdWithSpacesTests.cs b/src/Refitter.Tests/Examples/OperationIdWithSpacesTests.cs index a58756813..b5350b112 100644 --- a/src/Refitter.Tests/Examples/OperationIdWithSpacesTests.cs +++ b/src/Refitter.Tests/Examples/OperationIdWithSpacesTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -29,21 +29,21 @@ public class OperationIdWithSpacesTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Replaces_KababCase_Parameters_With_PascalCase() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("string job_id"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/OptionalNullableParametersTests.cs b/src/Refitter.Tests/Examples/OptionalNullableParametersTests.cs index fe7aef1ab..73885c28b 100644 --- a/src/Refitter.Tests/Examples/OptionalNullableParametersTests.cs +++ b/src/Refitter.Tests/Examples/OptionalNullableParametersTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -46,45 +46,45 @@ public class OptionalNullableParametersTests description: 'successful operation' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_Nullable_Directive() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("#nullable"); } - [Theory] - [InlineData("title")] - [InlineData("contact")] - [InlineData("description")] + [Test] + [Arguments("title")] + [Arguments("contact")] + [Arguments("description")] public async Task Generates_Nullable_Parameters(string parameterName) { string generatedCode = await GenerateCode(); generatedCode.Should().Contain($"string? {parameterName} = default"); } - [Fact] + [Test] public async Task Generates_CancellationToken_Last() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("CancellationToken cancellationToken = default);"); } - [Fact] + [Test] public async Task Generates_DynamicQuerystring_Param() { string generatedCode = await GenerateCode(true); generatedCode.Should().Contain("string id, [Query] UpdateJobDetailsQueryParams? queryParams = default, CancellationToken cancellationToken = default);"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/OptionalParametersWithDefaultValuesEdgeCasesTests.cs b/src/Refitter.Tests/Examples/OptionalParametersWithDefaultValuesEdgeCasesTests.cs index 2dfd2577a..3abcce6d9 100644 --- a/src/Refitter.Tests/Examples/OptionalParametersWithDefaultValuesEdgeCasesTests.cs +++ b/src/Refitter.Tests/Examples/OptionalParametersWithDefaultValuesEdgeCasesTests.cs @@ -2,13 +2,13 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; public class OptionalParametersWithDefaultValuesEdgeCasesTests { - [Fact] + [Test] public async Task String_Default_Values_Should_Be_Escaped() { const string openApiSpec = @@ -71,7 +71,7 @@ public async Task String_Default_Values_Should_Be_Escaped() generatedCode.Should().Contain("string? newlineString = \"line1\\nline2\""); } - [Fact] + [Test] public async Task String_Default_Values_With_All_Escape_Characters_Should_Be_Escaped() { const string openApiSpec = @@ -134,7 +134,7 @@ public async Task String_Default_Values_With_All_Escape_Characters_Should_Be_Esc generatedCode.Should().Contain("string? allSpecialChars = \"test\\n\\r\\t\\\\\\\"\""); } - [Fact] + [Test] public async Task Float_Default_Values_Should_Have_Type_Suffix() { const string openApiSpec = @@ -178,7 +178,7 @@ public async Task Float_Default_Values_Should_Have_Type_Suffix() generatedCode.Should().Contain("float? floatValue = 1.5f"); } - [Fact] + [Test] public async Task Decimal_Default_Values_Should_Have_Type_Suffix() { const string openApiSpec = @@ -222,7 +222,7 @@ public async Task Decimal_Default_Values_Should_Have_Type_Suffix() generatedCode.Should().Contain("decimal? decimalValue = 99.99m"); } - [Fact] + [Test] public async Task Generated_Code_With_Escaped_Strings_Should_Build() { const string openApiSpec = @@ -263,7 +263,7 @@ public async Task Generated_Code_With_Escaped_Strings_Should_Build() BuildHelper.BuildCSharp(generatedCode).Should().BeTrue(); } - [Fact] + [Test] public async Task Generated_Code_With_Float_Decimal_Should_Build() { const string openApiSpec = @@ -315,7 +315,7 @@ public async Task Generated_Code_With_Float_Decimal_Should_Build() BuildHelper.BuildCSharp(generatedCode).Should().BeTrue(); } - [Fact] + [Test] public async Task Integer_Default_Values_Should_Not_Have_Suffix() { const string openApiSpec = @@ -370,7 +370,7 @@ public async Task Integer_Default_Values_Should_Not_Have_Suffix() generatedCode.Should().Contain("long? longValue = 9999"); } - [Fact] + [Test] public async Task Double_Default_Values_Should_Have_Decimal_Point() { const string openApiSpec = @@ -426,7 +426,7 @@ public async Task Double_Default_Values_Should_Have_Decimal_Point() generatedCode.Should().Contain("double? doubleIntValue = 10.0"); } - [Fact] + [Test] public async Task Boolean_Default_Values_Should_Be_Lowercase() { const string openApiSpec = @@ -479,7 +479,7 @@ public async Task Boolean_Default_Values_Should_Be_Lowercase() generatedCode.Should().Contain("bool? isDisabled = false"); } - [Fact] + [Test] public async Task Empty_String_Default_Value_Should_Be_Handled() { const string openApiSpec = @@ -522,7 +522,7 @@ public async Task Empty_String_Default_Value_Should_Be_Handled() generatedCode.Should().Contain("string? emptyString = \"\""); } - [Fact] + [Test] public async Task Mixed_Escape_Sequences_Should_Be_Handled() { const string openApiSpec = @@ -565,7 +565,7 @@ public async Task Mixed_Escape_Sequences_Should_Be_Handled() generatedCode.Should().Contain("string? complexString = \"path\\\\to\\\\file with \\\"quotes\\\" and\\nnewlines\\tand tabs\""); } - [Fact] + [Test] public async Task Long_And_ULong_Default_Values_Should_Have_Suffixes() { const string openApiSpec = diff --git a/src/Refitter.Tests/Examples/OptionalParametersWithDefaultValuesTests.cs b/src/Refitter.Tests/Examples/OptionalParametersWithDefaultValuesTests.cs index 4f34c2f0c..a703cb6ed 100644 --- a/src/Refitter.Tests/Examples/OptionalParametersWithDefaultValuesTests.cs +++ b/src/Refitter.Tests/Examples/OptionalParametersWithDefaultValuesTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -90,14 +90,14 @@ public class OptionalParametersWithDefaultValuesTests } """; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generated_Code_Should_Have_Optional_Parameters_With_Default_Values() { string generatedCode = await GenerateCode(); @@ -106,7 +106,7 @@ public async Task Generated_Code_Should_Have_Optional_Parameters_With_Default_Va generatedCode.Should().Contain("string? filter = \"active\""); } - [Fact] + [Test] public async Task Generated_Code_Should_Have_Required_Parameters_Without_Defaults() { string generatedCode = await GenerateCode(); @@ -116,7 +116,7 @@ public async Task Generated_Code_Should_Have_Required_Parameters_Without_Default generatedCode.Should().NotContain("System.DateTimeOffset end ="); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/PathParametersTests.cs b/src/Refitter.Tests/Examples/PathParametersTests.cs index 519546b1b..582691cc0 100644 --- a/src/Refitter.Tests/Examples/PathParametersTests.cs +++ b/src/Refitter.Tests/Examples/PathParametersTests.cs @@ -3,7 +3,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -54,14 +54,14 @@ their ids. format: uuid "; - [Fact] + [Test] public async Task Can_Generate_Code() { var generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_Path_Parameters() { var generatedCode = await GenerateCode(); @@ -70,7 +70,7 @@ public async Task Generates_Path_Parameters() generatedCode.Should().Contain("Guid orderItemId"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { var generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/PercentageCharacterTests.cs b/src/Refitter.Tests/Examples/PercentageCharacterTests.cs index aa1172e7b..2d662ecb8 100644 --- a/src/Refitter.Tests/Examples/PercentageCharacterTests.cs +++ b/src/Refitter.Tests/Examples/PercentageCharacterTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -46,21 +46,21 @@ public class PercentageCharacterTests type: 'string' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Replaces_Percentage_With_PascalCase() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("string PercentOfSomething"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/PoorOperationIdsTests.cs b/src/Refitter.Tests/Examples/PoorOperationIdsTests.cs index 791083d42..166e2763c 100644 --- a/src/Refitter.Tests/Examples/PoorOperationIdsTests.cs +++ b/src/Refitter.Tests/Examples/PoorOperationIdsTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -60,14 +60,14 @@ public class PoorOperationIdsTests } "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/RequestResponseHeadersTests.cs b/src/Refitter.Tests/Examples/RequestResponseHeadersTests.cs index a3c2b7f66..231c45459 100644 --- a/src/Refitter.Tests/Examples/RequestResponseHeadersTests.cs +++ b/src/Refitter.Tests/Examples/RequestResponseHeadersTests.cs @@ -3,7 +3,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -28,14 +28,14 @@ public class RequestResponseHeadersTests type: string "; - [Fact] + [Test] public async Task Can_Generate_Code() { var generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Generates_ContentType_Header_Attribute() { var generatedCode = await GenerateCode(); @@ -43,7 +43,7 @@ public async Task Generates_ContentType_Header_Attribute() generatedCode.Should().Contain("Content-Type: application/json"); } - [Fact] + [Test] public async Task Generates_Accept_Header_Attribute() { var generatedCode = await GenerateCode(); @@ -51,7 +51,7 @@ public async Task Generates_Accept_Header_Attribute() generatedCode.Should().Contain("Accept: application/json"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { var generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/ResponseHeadersTests.cs b/src/Refitter.Tests/Examples/ResponseHeadersTests.cs index 5e2d2df64..6dcc0edcb 100644 --- a/src/Refitter.Tests/Examples/ResponseHeadersTests.cs +++ b/src/Refitter.Tests/Examples/ResponseHeadersTests.cs @@ -3,7 +3,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -22,14 +22,14 @@ public class ResponseHeadersTests type: string "; - [Fact] + [Test] public async Task Can_Generate_Code() { var generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Should_Not_Generate_ContentType_Header_Attribute() { var generatedCode = await GenerateCode(); @@ -37,7 +37,7 @@ public async Task Should_Not_Generate_ContentType_Header_Attribute() generatedCode.Should().NotContain("Content-Type: \")]"); } - [Fact] + [Test] public async Task Generates_Accept_Header_Attribute() { var generatedCode = await GenerateCode(); @@ -45,7 +45,7 @@ public async Task Generates_Accept_Header_Attribute() generatedCode.Should().Contain("Accept: application/json"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { var generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/SymbolsInDescriptionTests.cs b/src/Refitter.Tests/Examples/SymbolsInDescriptionTests.cs index b092c1516..fd5f2606c 100644 --- a/src/Refitter.Tests/Examples/SymbolsInDescriptionTests.cs +++ b/src/Refitter.Tests/Examples/SymbolsInDescriptionTests.cs @@ -3,7 +3,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -34,21 +34,21 @@ Something something >> << type: string "; - [Fact] + [Test] public async Task Can_Generate_Code() { var generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Symbols_In_Description_Are_Escaped() { var generatedCode = await GenerateCode(); generatedCode.Should().Contain("<test> >> << </test>"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { var generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/SystemPropertyInContractTests.cs b/src/Refitter.Tests/Examples/SystemPropertyInContractTests.cs index aa7d4a365..5cc689c55 100644 --- a/src/Refitter.Tests/Examples/SystemPropertyInContractTests.cs +++ b/src/Refitter.Tests/Examples/SystemPropertyInContractTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -38,14 +38,14 @@ public class SystemPropertyInContractTests } "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/TrimUnusedSchemaTests.cs b/src/Refitter.Tests/Examples/TrimUnusedSchemaTests.cs index 3b9a9f4fe..707f9e9c0 100644 --- a/src/Refitter.Tests/Examples/TrimUnusedSchemaTests.cs +++ b/src/Refitter.Tests/Examples/TrimUnusedSchemaTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -187,14 +187,14 @@ public class TrimUnusedSchemaTests propertyName: $type "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Removes_Unreferenced_Schema() { string generatedCode = await GenerateCode(); @@ -214,7 +214,7 @@ public async Task Removes_Unreferenced_Schema() generatedCode.Should().NotContain("class UserComponent"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/UnderscoresToPascalCaseTests.cs b/src/Refitter.Tests/Examples/UnderscoresToPascalCaseTests.cs index f73116069..5a6ddd1ec 100644 --- a/src/Refitter.Tests/Examples/UnderscoresToPascalCaseTests.cs +++ b/src/Refitter.Tests/Examples/UnderscoresToPascalCaseTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -51,21 +51,21 @@ public class HandleUnderscoresTests type: 'string' "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Replaces_Underscore_Properties_With_PascalCase() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("DateTimeOffset StartDate"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/UseIsoDateFormatTests.cs b/src/Refitter.Tests/Examples/UseIsoDateFormatTests.cs index 46011b1c8..28d9c0d9f 100644 --- a/src/Refitter.Tests/Examples/UseIsoDateFormatTests.cs +++ b/src/Refitter.Tests/Examples/UseIsoDateFormatTests.cs @@ -1,9 +1,8 @@ -using AutoFixture.Xunit2; using FluentAssertions; using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -47,14 +46,14 @@ public class UseIsoDateFormatTests description: No response was specified "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task GeneratedCode_Contains_Date_Format_String() { string generatedCode = await GenerateCode(); @@ -62,7 +61,7 @@ public async Task GeneratedCode_Contains_Date_Format_String() generatedCode.Should().Contain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset valid_to"); } - [Fact] + [Test] public async Task GeneratedCode_NotContains_DateTime_Format_String() { string generatedCode = await GenerateCode(); @@ -70,14 +69,14 @@ public async Task GeneratedCode_NotContains_DateTime_Format_String() generatedCode.Should().NotContain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset time_datetime"); } - [Fact] + [Test] public async Task GeneratedCode_Contains_TimeSpan_Parameter() { string generatedCode = await GenerateCode(); generatedCode.Should().Contain("[Query] System.TimeSpan"); } - [Fact] + [Test] public async Task GeneratedCode_Contains_Date_Format_String_With_Empty_Settings() { string generatedCode = await GenerateCode(new CodeGeneratorSettings()); @@ -85,7 +84,7 @@ public async Task GeneratedCode_Contains_Date_Format_String_With_Empty_Settings( generatedCode.Should().Contain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset valid_to"); } - [Fact] + [Test] public async Task GeneratedCode_NotContains_DateTime_Format_String_With_Empty_Settings() { string generatedCode = await GenerateCode(new CodeGeneratorSettings()); @@ -93,14 +92,16 @@ public async Task GeneratedCode_NotContains_DateTime_Format_String_With_Empty_Se generatedCode.Should().NotContain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset time_datetime"); } - [Fact] + [Test] public async Task GeneratedCode_Contains_TimeSpan_Parameter_With_Empty_Settings() { string generatedCode = await GenerateCode(new CodeGeneratorSettings()); generatedCode.Should().Contain("[Query] System.TimeSpan"); } - [Theory, AutoData] + [Test] + [Arguments("dd/MM/yyyy", "yyyy-MM-ddTHH:mm:ss")] + [Arguments("MM-dd-yyyy", "HH:mm:ss")] public async Task GeneratedCode_Contains_Date_Format_String_With_Settings( string dateFormat, string dateTimeFormat) @@ -118,7 +119,9 @@ public async Task GeneratedCode_Contains_Date_Format_String_With_Settings( generatedCode.Should().Contain(@$"[Query] System.TimeSpan test_time"); } - [Theory, AutoData] + [Test] + [Arguments("dd/MM/yyyy")] + [Arguments("MM-dd-yyyy")] public async Task GeneratedCode_NotContains_DateTime_Format_String_With_Settings(string format) { string generatedCode = await GenerateCode(new CodeGeneratorSettings { DateFormat = format }); @@ -126,14 +129,16 @@ public async Task GeneratedCode_NotContains_DateTime_Format_String_With_Settings generatedCode.Should().NotContain(@$"[Query(Format = ""{format}"")] System.DateTimeOffset time_datetime"); } - [Theory, AutoData] + [Test] + [Arguments("dd/MM/yyyy")] + [Arguments("MM-dd-yyyy")] public async Task GeneratedCode_Contains_TimeSpan_Parameter_With_Settings(string format) { string generatedCode = await GenerateCode(new CodeGeneratorSettings { DateFormat = format }); generatedCode.Should().Contain("[Query] System.TimeSpan"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/Examples/UsePolymorphicSerializationTests.cs b/src/Refitter.Tests/Examples/UsePolymorphicSerializationTests.cs index 376f1dbec..81290f518 100644 --- a/src/Refitter.Tests/Examples/UsePolymorphicSerializationTests.cs +++ b/src/Refitter.Tests/Examples/UsePolymorphicSerializationTests.cs @@ -2,7 +2,7 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests.Examples; @@ -187,14 +187,14 @@ public class UsePolymorphicSerializationTests propertyName: $type "; - [Fact] + [Test] public async Task Can_Generate_Code() { string generatedCode = await GenerateCode(); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Fact] + [Test] public async Task Use_Polymorphic_Serialization() { string generatedCode = await GenerateCode(); @@ -210,7 +210,7 @@ public async Task Use_Polymorphic_Serialization() generatedCode.Should().Contain("[JsonDerivedType(typeof(UserComponent2), typeDiscriminator: \"UserComponent2\")]"); } - [Fact] + [Test] public async Task Can_Build_Generated_Code() { string generatedCode = await GenerateCode(); diff --git a/src/Refitter.Tests/IdentifierUtilsTests.cs b/src/Refitter.Tests/IdentifierUtilsTests.cs index 81495b1f3..7b7f424dd 100644 --- a/src/Refitter.Tests/IdentifierUtilsTests.cs +++ b/src/Refitter.Tests/IdentifierUtilsTests.cs @@ -1,12 +1,12 @@ using FluentAssertions; using Refitter.Core; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class IdentifierUtilsTests { - [Fact] + [Test] public void Counted_Returns_Original_Name_When_Not_In_Set() { var knownIdentifiers = new HashSet(); @@ -14,7 +14,7 @@ public void Counted_Returns_Original_Name_When_Not_In_Set() result.Should().Be("TestName"); } - [Fact] + [Test] public void Counted_Returns_Name_With_Suffix_When_Not_In_Set() { var knownIdentifiers = new HashSet(); @@ -22,7 +22,7 @@ public void Counted_Returns_Name_With_Suffix_When_Not_In_Set() result.Should().Be("TestNameAsync"); } - [Fact] + [Test] public void Counted_Returns_Name_With_Counter_When_Already_In_Set() { var knownIdentifiers = new HashSet { "TestName" }; @@ -30,7 +30,7 @@ public void Counted_Returns_Name_With_Counter_When_Already_In_Set() result.Should().Be("TestName2"); } - [Fact] + [Test] public void Counted_Returns_Name_With_Counter_And_Suffix_When_Already_In_Set() { var knownIdentifiers = new HashSet { "TestNameAsync" }; @@ -38,7 +38,7 @@ public void Counted_Returns_Name_With_Counter_And_Suffix_When_Already_In_Set() result.Should().Be("TestName2Async"); } - [Fact] + [Test] public void Counted_Increments_Counter_When_Multiple_Conflicts() { var knownIdentifiers = new HashSet { "TestName", "TestName2" }; @@ -46,7 +46,7 @@ public void Counted_Increments_Counter_When_Multiple_Conflicts() result.Should().Be("TestName3"); } - [Fact] + [Test] public void Counted_With_Parent_Returns_Name_When_Not_In_Set() { var knownIdentifiers = new HashSet(); @@ -54,7 +54,7 @@ public void Counted_With_Parent_Returns_Name_When_Not_In_Set() result.Should().Be("ChildName"); } - [Fact] + [Test] public void Counted_With_Parent_Returns_Name_With_Counter_When_Conflict() { var knownIdentifiers = new HashSet { "ParentName.ChildName" }; @@ -62,7 +62,7 @@ public void Counted_With_Parent_Returns_Name_With_Counter_When_Conflict() result.Should().Be("ChildName2"); } - [Fact] + [Test] public void Counted_With_Parent_And_Suffix_Returns_Correct_Name() { var knownIdentifiers = new HashSet { "ParentName.ChildNameAsync" }; @@ -70,119 +70,119 @@ public void Counted_With_Parent_And_Suffix_Returns_Correct_Name() result.Should().Be("ChildName2Async"); } - [Fact] + [Test] public void Sanitize_Removes_Spaces() { var result = "Test Name".Sanitize(); result.Should().Be("TestName"); } - [Fact] + [Test] public void Sanitize_Removes_Dashes() { var result = "Test-Name".Sanitize(); result.Should().Be("TestName"); } - [Fact] + [Test] public void Sanitize_Removes_Dots() { var result = "Test.Name".Sanitize(); result.Should().Be("TestName"); } - [Fact] + [Test] public void Sanitize_Removes_Special_Characters() { var result = "Test!@#$%^&*()Name".Sanitize(); result.Should().Be("TestName"); } - [Fact] + [Test] public void Sanitize_Removes_Quotes() { var result = "Test\"Name'".Sanitize(); result.Should().Be("TestName"); } - [Fact] + [Test] public void Sanitize_Removes_Newlines_And_Tabs() { var result = "Test\nName\t".Sanitize(); result.Should().Be("TestName"); } - [Fact] + [Test] public void Sanitize_Removes_Brackets_And_Braces() { var result = "Test[Name]{Value}(Param)".Sanitize(); result.Should().Be("TestNameValueParam"); } - [Fact] + [Test] public void Sanitize_Removes_Pipes_And_Slashes() { var result = "Test|Name/Value\\Item".Sanitize(); result.Should().Be("TestNameValueItem"); } - [Fact] + [Test] public void Sanitize_Removes_Colons_Semicolons_And_Commas() { var result = "Test:Name;Value,Item".Sanitize(); result.Should().Be("TestNameValueItem"); } - [Fact] + [Test] public void Sanitize_Adds_Underscore_Prefix_When_Starting_With_Number() { var result = "123Test".Sanitize(); result.Should().Be("_123Test"); } - [Fact] + [Test] public void Sanitize_Preserves_Underscore_Prefix() { var result = "_TestName".Sanitize(); result.Should().Be("_TestName"); } - [Fact] + [Test] public void Sanitize_Preserves_Valid_Identifier_Characters() { var result = "Test_Name123".Sanitize(); result.Should().Be("Test_Name123"); } - [Fact] + [Test] public void Sanitize_Handles_Multiple_Consecutive_Illegal_Characters() { var result = "Test --- Name".Sanitize(); result.Should().Be("TestName"); } - [Fact] + [Test] public void Sanitize_Adds_Underscore_When_Starting_With_Lowercase() { var result = "aTestName".Sanitize(); result.Should().Be("aTestName"); } - [Fact] + [Test] public void Sanitize_Removes_Special_Characters_Including_At_Symbol() { var result = "@TestName".Sanitize(); result.Should().Be("_TestName"); } - [Fact] + [Test] public void Sanitize_Trims_Trailing_Dashes() { var result = "TestName---".Sanitize(); result.Should().Be("TestName"); } - [Fact] + [Test] public void Sanitize_Complex_String_With_Multiple_Issues() { var result = "123-Test Name!@#Value".Sanitize(); diff --git a/src/Refitter.Tests/IllegalSymbolsTests.cs b/src/Refitter.Tests/IllegalSymbolsTests.cs index e065476f0..4897d2f1b 100644 --- a/src/Refitter.Tests/IllegalSymbolsTests.cs +++ b/src/Refitter.Tests/IllegalSymbolsTests.cs @@ -3,13 +3,13 @@ using Refitter.Tests.Build; using Refitter.Tests.Resources; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class IllegalSymbolsTests { - [Fact] + [Test] public async Task Illegal_Symbols_In_Paths__Should_Build_Successfully() { var generatedCode = await GenerateCode(EmbeddedResources.SwaggerIllegalPathsJsonV3); @@ -19,7 +19,7 @@ public async Task Illegal_Symbols_In_Paths__Should_Build_Successfully() .BeTrue(); } - [Fact] + [Test] public async Task Illegal_Symbols_In_Title__Should_Build_Successfully() { var generatedCode = await GenerateCode(EmbeddedResources.SwaggerIllegalSymbolsInTitleJsonV3); diff --git a/src/Refitter.Tests/OpenApiDocumentFactoryTests.cs b/src/Refitter.Tests/OpenApiDocumentFactoryTests.cs index 7befe766c..133732b71 100644 --- a/src/Refitter.Tests/OpenApiDocumentFactoryTests.cs +++ b/src/Refitter.Tests/OpenApiDocumentFactoryTests.cs @@ -1,15 +1,15 @@ using FluentAssertions; using Refitter.Core; using Refitter.Tests.Resources; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class OpenApiDocumentFactoryTests { - [Theory] - [InlineData("https://developers.intellihr.io/docs/v1/swagger.json")] // GZIP encoded - [InlineData("http://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.json")] + [Test] + [Arguments("https://developers.intellihr.io/docs/v1/swagger.json")] // GZIP encoded + [Arguments("http://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.json")] public async Task Create_From_Uri_Returns_NotNull(string url) { var settings = new RefitGeneratorSettings { OpenApiPath = url }; @@ -18,11 +18,11 @@ public async Task Create_From_Uri_Returns_NotNull(string url) .NotBeNull(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Create_From_File_Returns_NotNull(SampleOpenSpecifications version, string filename) { var swaggerFile = await TestFile.CreateSwaggerFile(EmbeddedResources.GetSwaggerPetstore(version), filename); @@ -32,10 +32,10 @@ public async Task Create_From_File_Returns_NotNull(SampleOpenSpecifications vers .NotBeNull(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "petstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "petstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "petstore.yml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "petstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "petstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "petstore.yml")] public async Task Create_From_File_Detects_Format_Correctly(SampleOpenSpecifications version, string filename) { var swaggerFile = await TestFile.CreateSwaggerFile(EmbeddedResources.GetSwaggerPetstore(version), filename); @@ -46,7 +46,7 @@ public async Task Create_From_File_Detects_Format_Correctly(SampleOpenSpecificat document.Info.Title.Should().NotBeNullOrEmpty(); } - [Fact] + [Test] public async Task Create_From_File_With_External_References_Returns_NotNull() { var spec = @"{ @@ -81,7 +81,7 @@ public async Task Create_From_File_With_External_References_Returns_NotNull() document.Info.Title.Should().Be("Test API"); } - [Fact] + [Test] public async Task Create_From_Yaml_File_Without_Extension_Returns_NotNull() { var spec = @"openapi: 3.0.0 @@ -105,16 +105,16 @@ public async Task Create_From_Yaml_File_Without_Extension_Returns_NotNull() document.Info.Title.Should().Be("Test API"); } - [Theory] - [InlineData("https://petstore.swagger.io/v2/swagger.json")] - [InlineData("http://petstore.swagger.io/v2/swagger.json")] + [Test] + [Arguments("https://petstore.swagger.io/v2/swagger.json")] + [Arguments("http://petstore.swagger.io/v2/swagger.json")] public async Task Create_From_Http_Url_Returns_NotNull(string url) { var document = await OpenApiDocumentFactory.CreateAsync(url); document.Should().NotBeNull(); } - [Fact] + [Test] public async Task Create_Handles_Missing_Info_Fields() { var spec = @"{ diff --git a/src/Refitter.Tests/PathParametersWithUrlTests.cs b/src/Refitter.Tests/PathParametersWithUrlTests.cs index d83646f66..ada4a9e18 100644 --- a/src/Refitter.Tests/PathParametersWithUrlTests.cs +++ b/src/Refitter.Tests/PathParametersWithUrlTests.cs @@ -2,18 +2,18 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class PathParametersWithUrlTests { - [Theory] - [InlineData("https://petstore3.swagger.io/api/v3/openapi.json")] + [Test] + [Arguments("https://petstore3.swagger.io/api/v3/openapi.json")] #if !DEBUG - [InlineData("https://petstore3.swagger.io/api/v3/openapi.yaml")] - [InlineData("https://petstore.swagger.io/v2/swagger.json")] - [InlineData("https://petstore.swagger.io/v2/swagger.yaml")] + [Arguments("https://petstore3.swagger.io/api/v3/openapi.yaml")] + [Arguments("https://petstore.swagger.io/v2/swagger.json")] + [Arguments("https://petstore.swagger.io/v2/swagger.yaml")] #endif public async Task Can_Generate_Code(string url) { @@ -21,12 +21,12 @@ public async Task Can_Generate_Code(string url) generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Theory] - [InlineData("https://petstore3.swagger.io/api/v3/openapi.json")] + [Test] + [Arguments("https://petstore3.swagger.io/api/v3/openapi.json")] #if !DEBUG - [InlineData("https://petstore3.swagger.io/api/v3/openapi.yaml")] - [InlineData("https://petstore.swagger.io/v2/swagger.json")] - [InlineData("https://petstore.swagger.io/v2/swagger.yaml")] + [Arguments("https://petstore3.swagger.io/api/v3/openapi.yaml")] + [Arguments("https://petstore.swagger.io/v2/swagger.json")] + [Arguments("https://petstore.swagger.io/v2/swagger.yaml")] #endif public async Task Can_Build_Generated_Code(string url) { diff --git a/src/Refitter.Tests/RefitInterfaceImportTests.cs b/src/Refitter.Tests/RefitInterfaceImportTests.cs index 5a3caed68..2a9f8df0a 100644 --- a/src/Refitter.Tests/RefitInterfaceImportTests.cs +++ b/src/Refitter.Tests/RefitInterfaceImportTests.cs @@ -1,12 +1,12 @@ using FluentAssertions; using Refitter.Core; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class RefitInterfaceImportTests { - [Fact] + [Test] public void Should_Contain_SystemThreading() { var settings = new RefitGeneratorSettings { UseCancellationTokens = true }; @@ -14,7 +14,7 @@ public void Should_Contain_SystemThreading() refitInterfaceImport.Should().Contain("System.Threading"); } - [Fact] + [Test] public void Should_NotContain_SystemThreading() { var settings = new RefitGeneratorSettings { UseCancellationTokens = false }; @@ -22,7 +22,7 @@ public void Should_NotContain_SystemThreading() refitInterfaceImport.Should().NotContain("System.Threading"); } - [Fact] + [Test] public void Should_NotContain_Any_System_Excluded() { var settings = new RefitGeneratorSettings { UseCancellationTokens = true, ReturnIObservable = false, ExcludeNamespaces = new string[] { "^System[.].*" } }; @@ -33,7 +33,7 @@ public void Should_NotContain_Any_System_Excluded() refitInterfaceImport.Should().NotContain("System.Threading.Tasks"); } - [Fact] + [Test] public void Should_NotContain_SystemThreading_Excluded() { var settings = new RefitGeneratorSettings { UseCancellationTokens = true, ReturnIObservable = false, ExcludeNamespaces = new string[] { "System.Threading$" } }; @@ -42,7 +42,7 @@ public void Should_NotContain_SystemThreading_Excluded() refitInterfaceImport.Should().Contain("System.Threading.Tasks"); } - [Fact] + [Test] public void Should_Contain_ApizrConfiguringRequest() { var settings = new RefitGeneratorSettings { ApizrSettings = new ApizrSettings { WithRequestOptions = true, WithRegistrationHelper = true } }; @@ -50,7 +50,7 @@ public void Should_Contain_ApizrConfiguringRequest() refitInterfaceImport.Should().Contain("Apizr.Configuring.Request"); } - [Fact] + [Test] public void Should_Contain_ApizrConfiguringRequest_And_NotContain_SystemThreading() { var settings = new RefitGeneratorSettings { ApizrSettings = new ApizrSettings { WithRequestOptions = true, WithRegistrationHelper = true }, UseCancellationTokens = true }; diff --git a/src/Refitter.Tests/Refitter.Tests.csproj b/src/Refitter.Tests/Refitter.Tests.csproj index 0086ffd3c..0e11da3dc 100644 --- a/src/Refitter.Tests/Refitter.Tests.csproj +++ b/src/Refitter.Tests/Refitter.Tests.csproj @@ -1,8 +1,12 @@ - net8.0 - false + net8.0 + false + Exe + enable + enable + false @@ -14,14 +18,9 @@ - - + - - - runtime; build; native; contentfiles; analyzers; buildtransitive - all - + runtime; build; native; contentfiles; analyzers; buildtransitive all diff --git a/src/Refitter.Tests/SchemaCleanerTests.cs b/src/Refitter.Tests/SchemaCleanerTests.cs index 4ffceafaa..724ad52c9 100644 --- a/src/Refitter.Tests/SchemaCleanerTests.cs +++ b/src/Refitter.Tests/SchemaCleanerTests.cs @@ -1,15 +1,15 @@ using FluentAssertions; using Refitter.Core; using Refitter.Tests.Resources; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class SchemaCleanerTests { - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2)] public async Task RemoveUnreferencedSchema_Removes_Unused_Schemas(SampleOpenSpecifications version) { var spec = EmbeddedResources.GetSwaggerPetstore(version); @@ -24,9 +24,9 @@ public async Task RemoveUnreferencedSchema_Removes_Unused_Schemas(SampleOpenSpec document.Components.Schemas.Count.Should().BeLessOrEqualTo(initialCount); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2)] public async Task RemoveUnreferencedSchema_Keeps_Referenced_Schemas(SampleOpenSpecifications version) { var spec = EmbeddedResources.GetSwaggerPetstore(version); @@ -39,9 +39,9 @@ public async Task RemoveUnreferencedSchema_Keeps_Referenced_Schemas(SampleOpenSp document.Components.Schemas.Should().NotBeEmpty(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "Pet.*")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "Pet")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "Pet.*")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "Pet")] public async Task RemoveUnreferencedSchema_Keeps_Schemas_Matching_Pattern( SampleOpenSpecifications version, string pattern) @@ -56,9 +56,9 @@ public async Task RemoveUnreferencedSchema_Keeps_Schemas_Matching_Pattern( document.Components.Schemas.Keys.Should().Contain(k => k.Contains("Pet")); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, true)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, false)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, true)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, false)] public async Task RemoveUnreferencedSchema_Handles_IncludeInheritanceHierarchy_Flag( SampleOpenSpecifications version, bool includeHierarchy) @@ -76,9 +76,9 @@ public async Task RemoveUnreferencedSchema_Handles_IncludeInheritanceHierarchy_F document.Components.Schemas.Should().NotBeEmpty(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2)] public async Task SchemaCleaner_Constructor_Accepts_Parameters(SampleOpenSpecifications version) { var spec = EmbeddedResources.GetSwaggerPetstore(version); @@ -91,8 +91,8 @@ public async Task SchemaCleaner_Constructor_Accepts_Parameters(SampleOpenSpecifi cleaner.IncludeInheritanceHierarchy.Should().BeFalse(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3)] public async Task SchemaCleaner_IncludeInheritanceHierarchy_Can_Be_Set(SampleOpenSpecifications version) { var spec = EmbeddedResources.GetSwaggerPetstore(version); diff --git a/src/Refitter.Tests/SerializerTests.cs b/src/Refitter.Tests/SerializerTests.cs index bc80faef4..6c7ae82d7 100644 --- a/src/Refitter.Tests/SerializerTests.cs +++ b/src/Refitter.Tests/SerializerTests.cs @@ -1,40 +1,46 @@ -using System.Reflection; -using Atc.Test; using FluentAssertions; using Refitter.Core; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class SerializerTests { - [Theory, AutoNSubstituteData] - public void Can_Serialize_RefitGeneratorSettings( - RefitGeneratorSettings settings) + private static RefitGeneratorSettings CreateTestSettings() => new() { + OpenApiPath = "test.json", + Namespace = "TestNamespace", + GenerateContracts = true, + GenerateClients = true + }; + + [Test] + public void Can_Serialize_RefitGeneratorSettings() + { + var settings = CreateTestSettings(); Serializer .Serialize(settings) .Should() .NotBeNullOrWhiteSpace(); } - [Theory, AutoNSubstituteData] - public void Can_Deserialize_RefitGeneratorSettingsWithoutNameGenerators( - RefitGeneratorSettings settings) + [Test] + public void Can_Deserialize_RefitGeneratorSettingsWithoutNameGenerators() { + var settings = CreateTestSettings(); var json = Serializer.Serialize(settings); Serializer .Deserialize(json) .Should() .BeEquivalentTo(settings, options => options - .Excluding(settings => settings.ParameterNameGenerator) - .Excluding(settings => settings.CodeGeneratorSettings!.PropertyNameGenerator)); + .Excluding(s => s.ParameterNameGenerator) + .Excluding(s => s.CodeGeneratorSettings!.PropertyNameGenerator)); } - [Theory, AutoNSubstituteData] - public void Deserialize_Is_Case_Insensitive( - RefitGeneratorSettings settings) + [Test] + public void Deserialize_Is_Case_Insensitive() { + var settings = CreateTestSettings(); var json = Serializer.Serialize(settings); foreach (var property in typeof(RefitGeneratorSettings).GetProperties()) { @@ -48,14 +54,14 @@ public void Deserialize_Is_Case_Insensitive( .Deserialize(json) .Should() .BeEquivalentTo(settings, options => options - .Excluding(settings => settings.ParameterNameGenerator) - .Excluding(settings => settings.CodeGeneratorSettings!.PropertyNameGenerator)); + .Excluding(s => s.ParameterNameGenerator) + .Excluding(s => s.CodeGeneratorSettings!.PropertyNameGenerator)); } - [Theory, AutoNSubstituteData] - public void Deserialize_With_Comments( - RefitGeneratorSettings settings) + [Test] + public void Deserialize_With_Comments() { + var settings = CreateTestSettings(); var json = Serializer.Serialize(settings); json = "// Comment\n" + json; @@ -63,7 +69,7 @@ public void Deserialize_With_Comments( .Deserialize(json) .Should() .BeEquivalentTo(settings, options => options - .Excluding(settings => settings.ParameterNameGenerator) - .Excluding(settings => settings.CodeGeneratorSettings!.PropertyNameGenerator)); + .Excluding(s => s.ParameterNameGenerator) + .Excluding(s => s.CodeGeneratorSettings!.PropertyNameGenerator)); } } diff --git a/src/Refitter.Tests/StringCasingExtensionTests.cs b/src/Refitter.Tests/StringCasingExtensionTests.cs index 5a3047d95..ae27d38bc 100644 --- a/src/Refitter.Tests/StringCasingExtensionTests.cs +++ b/src/Refitter.Tests/StringCasingExtensionTests.cs @@ -1,48 +1,48 @@ using FluentAssertions; using Refitter.Core; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class StringCasingExtensionTests { - [Theory] - [InlineData("some-string", "SomeString")] + [Test] + [Arguments("some-string", "SomeString")] public void CanConvertToPascalCase(string input, string expected) => input.ConvertKebabCaseToPascalCase().Should().Be(expected); - [Theory] - [InlineData("some-string", "someString")] + [Test] + [Arguments("some-string", "someString")] public void CanConvertToCamelCase(string input, string expected) => input.ConvertKebabCaseToCamelCase().Should().Be(expected); - [Theory] - [InlineData("abcd", "Abcd")] + [Test] + [Arguments("abcd", "Abcd")] public void CanCaptilalizeFirstLetter(string input, string expected) => input.CapitalizeFirstCharacter().Should().Be(expected); - [Theory] - [InlineData("", "")] + [Test] + [Arguments("", "")] public void CaptilalizeFirstLetterHandlesEmptyStrings(string input, string expected) => input.CapitalizeFirstCharacter().Should().Be(expected); - [Theory] - [InlineData("foo/bar", "fooBar")] + [Test] + [Arguments("foo/bar", "fooBar")] public void CanConvertRouteToCamelCase(string input, string expected) => input.ConvertRouteToCamelCase().Should().Be(expected); - [Theory] - [InlineData("foo bar", "FooBar")] + [Test] + [Arguments("foo bar", "FooBar")] public void CanConvertSpacesToPascalCase(string input, string expected) => input.ConvertSpacesToPascalCase().Should().Be(expected); - [Theory] - [InlineData("foo:bar", "FooBar")] + [Test] + [Arguments("foo:bar", "FooBar")] public void CanConvertColonsToPascalCase(string input, string expected) => input.ConvertColonsToPascalCase().Should().Be(expected); - [Theory] - [InlineData("foo_bar", "FooBar")] + [Test] + [Arguments("foo_bar", "FooBar")] public void CanConvertSnakeCaseToPascalCase(string input, string expected) => input.ConvertSnakeCaseToPascalCase().Should().Be(expected); } diff --git a/src/Refitter.Tests/SwaggerPetstoreApizrTests.cs b/src/Refitter.Tests/SwaggerPetstoreApizrTests.cs index a7b748b20..0f66b9758 100644 --- a/src/Refitter.Tests/SwaggerPetstoreApizrTests.cs +++ b/src/Refitter.Tests/SwaggerPetstoreApizrTests.cs @@ -3,7 +3,7 @@ using Refitter.Tests.Build; using Refitter.Tests.Resources; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; @@ -31,33 +31,33 @@ public ApizrGeneratorSettings() } } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode(version, filename); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Partial_Interfaces(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode(version, filename); generatedCode.Should().Contain("partial interface"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_Contracts(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode( @@ -67,11 +67,11 @@ public async Task Can_Generate_Code_Without_Contracts(SampleOpenSpecifications v generatedCode.Should().NotContain("class Pet"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_XmlDoc_Code_Comments(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode( @@ -81,11 +81,11 @@ public async Task Can_Generate_Code_With_XmlDoc_Code_Comments(SampleOpenSpecific generatedCode.Should().Contain(""); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_XmlDoc_Code_Comments(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode( @@ -95,11 +95,11 @@ public async Task Can_Generate_Code_Without_XmlDoc_Code_Comments(SampleOpenSpeci generatedCode.Should().NotContain(""); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Default_Namespace(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode( @@ -109,11 +109,11 @@ public async Task Can_Generate_Code_With_Default_Namespace(SampleOpenSpecificati generatedCode.Should().Contain("namespace Some.Other.Namespace"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Fixed_Interface_Name(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { Naming = { UseOpenApiTitle = false, InterfaceName = "SomeOtherName" } }; @@ -121,11 +121,11 @@ public async Task Can_Generate_Code_With_Fixed_Interface_Name(SampleOpenSpecific generatedCode.Should().Contain("interface ISomeOtherName"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_AutoGenerated_Header(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { AddAutoGeneratedHeader = false }; @@ -133,11 +133,11 @@ public async Task Can_Generate_Code_Without_AutoGenerated_Header(SampleOpenSpeci generatedCode.Should().NotContain("This code was generated by Refitter"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_That_Returns_IApiResponse(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { ReturnIApiResponse = true }; @@ -145,11 +145,11 @@ public async Task Can_Generate_Code_That_Returns_IApiResponse(SampleOpenSpecific generatedCode.Should().Contain("Task>"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Type_Override(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings @@ -168,11 +168,11 @@ public async Task Can_Generate_Code_With_Type_Override(SampleOpenSpecifications generatedCode.Should().Contain("Task AddPet"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Internal_Contract_Types(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { TypeAccessibility = TypeAccessibility.Internal }; @@ -180,11 +180,11 @@ public async Task Can_Generate_Code_With_Internal_Contract_Types(SampleOpenSpeci generatedCode.Should().Contain("internal partial class"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Internal_Interface(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { TypeAccessibility = TypeAccessibility.Internal }; @@ -192,11 +192,11 @@ public async Task Can_Generate_Code_With_Internal_Interface(SampleOpenSpecificat generatedCode.Should().Contain("internal partial interface"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_CancellationToken(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { UseCancellationTokens = true }; @@ -204,15 +204,15 @@ public async Task Can_Generate_Code_Without_CancellationToken(SampleOpenSpecific generatedCode.Should().NotContain("CancellationToken cancellationToken = default"); // Handled by Apizr request options } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", true)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", true)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", true)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", true)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", false)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", false)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", false)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", false)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", true)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", true)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", true)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", true)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", false)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", false)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", false)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", false)] public async Task Can_Generate_Code_With_Correct_Usings( SampleOpenSpecifications version, string filename, @@ -223,11 +223,11 @@ public async Task Can_Generate_Code_With_Correct_Usings( generatedCode.Should().NotContain("CancellationToken cancellationToken = default"); // Handled by Apizr request options } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.yaml")] public async Task Can_Generate_Code_With_OperationHeaders_With_Different_Headers(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { GenerateOperationHeaders = true }; @@ -235,11 +235,11 @@ public async Task Can_Generate_Code_With_OperationHeaders_With_Different_Headers generatedCode.Should().Contain("[Header(\"api-key\")] string api_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_OperationHeaders(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { GenerateOperationHeaders = true }; @@ -247,11 +247,11 @@ public async Task Can_Generate_Code_With_OperationHeaders(SampleOpenSpecificatio generatedCode.Should().Contain("[Header(\"api_key\")] string api_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_OperationHeaders(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { GenerateOperationHeaders = false }; @@ -259,11 +259,11 @@ public async Task Can_Generate_Code_Without_OperationHeaders(SampleOpenSpecifica generatedCode.Should().NotContain("[Header(\"api_key\")] string? api_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.yaml")] public async Task Can_Generate_Code_With_Unsafe_AuthenticationHeaders(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { GenerateAuthenticationHeader = true }; @@ -271,11 +271,11 @@ public async Task Can_Generate_Code_With_Unsafe_AuthenticationHeaders(SampleOpen generatedCode.Should().Contain("[Header(\"auth.key\")] string auth_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] public async Task Can_Generate_Code_With_AuthenticationHeaders(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { GenerateAuthenticationHeader = true }; @@ -283,11 +283,11 @@ public async Task Can_Generate_Code_With_AuthenticationHeaders(SampleOpenSpecifi generatedCode.Should().Contain("[Header(\"auth_key\")] string auth_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] public async Task Can_Generate_Code_With_AuthenticationHeaders_Without_OperationHeaders(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { GenerateOperationHeaders = false, GenerateAuthenticationHeader = true }; @@ -295,11 +295,11 @@ public async Task Can_Generate_Code_With_AuthenticationHeaders_Without_Operation generatedCode.Should().Contain("[Header(\"auth_key\")] string auth_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_AuthenticationHeaders(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { GenerateAuthenticationHeader = false }; @@ -307,11 +307,11 @@ public async Task Can_Generate_Code_Without_AuthenticationHeaders(SampleOpenSpec generatedCode.Should().NotContain("[Header(\"auth_key\")] string? auth_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Accept_Request_Header(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings(); @@ -322,9 +322,9 @@ public async Task Can_Generate_Code_With_Accept_Request_Header(SampleOpenSpecifi generatedCode.Should().NotContain("[Headers(\"Accept: application/json\""); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_No_Accept_Request_Header(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { AddAcceptHeaders = false }; @@ -332,11 +332,11 @@ public async Task Can_Generate_Code_With_No_Accept_Request_Header(SampleOpenSpec generatedCode.Should().NotContain("[Headers(\"Accept"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Multiple_Interfaces(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { MultipleInterfaces = MultipleInterfaces.ByEndpoint }; @@ -344,11 +344,11 @@ public async Task Can_Generate_Code_With_Multiple_Interfaces(SampleOpenSpecifica generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Dependency_Injection_Setup(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings @@ -363,11 +363,11 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup(SampleOpenSpecifi generatedCode.Should().Contain("AddApizrManagerFor"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Dependency_Injection_Setup_With_Polly(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings @@ -384,11 +384,11 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup_With_Polly(Sample generatedCode.Should().Contain("Backoff.DecorrelatedJitterBackoffV2"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Dependency_Injection_Setup_Without_Polly(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings @@ -405,19 +405,19 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup_Without_Polly(Sam generatedCode.Should().NotContain("Backoff.DecorrelatedJitterBackoffV2"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.Unset)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.Unset)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.Unset)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.Unset)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByTag)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByTag)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByTag)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByTag)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.Unset)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.Unset)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.Unset)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.Unset)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByTag)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByTag)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByTag)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByTag)] public async Task Can_Generate_Code_GeneratedCode_Attribute( SampleOpenSpecifications version, string filename, @@ -428,11 +428,11 @@ public async Task Can_Generate_Code_GeneratedCode_Attribute( generatedCode.Should().Contain("[System.CodeDom.Compiler.GeneratedCode(\"Refitter\""); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] public async Task Can_Generate_Code_With_Multiple_Interfaces_And_OperationNameTemplate( SampleOpenSpecifications version, string filename, @@ -447,12 +447,12 @@ public async Task Can_Generate_Code_With_Multiple_Interfaces_And_OperationNameTe generatedCode.Should().Contain("ExecuteAsync("); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generated_Code(SampleOpenSpecifications version, string filename) { @@ -463,12 +463,12 @@ public async Task Can_Build_Generated_Code(SampleOpenSpecifications version, str .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generated_Code_With_IApiResponse(SampleOpenSpecifications version, string filename) { @@ -480,8 +480,8 @@ public async Task Can_Build_Generated_Code_With_IApiResponse(SampleOpenSpecifica .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] public async Task Can_Build_Generated_Code_With_IObservableResponse(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { ReturnIObservable = true }; @@ -493,12 +493,12 @@ public async Task Can_Build_Generated_Code_With_IObservableResponse(SampleOpenSp .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generated_Code_With_Multiple_Interfaces(SampleOpenSpecifications version, string filename) { @@ -510,12 +510,12 @@ public async Task Can_Build_Generated_Code_With_Multiple_Interfaces(SampleOpenSp .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generated_Code_With_Multiple_Interfaces_ByTag(SampleOpenSpecifications version, string filename) { @@ -528,11 +528,11 @@ public async Task Can_Build_Generated_Code_With_Multiple_Interfaces_ByTag(Sample } #if !DEBUG - [Theory] - [InlineData("http://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.json")] - [InlineData("http://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.yaml")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.json")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.yaml")] + [Test] + [Arguments("http://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.json")] + [Arguments("http://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.yaml")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.json")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.yaml")] public async Task Can_Build_Generated_Code_From_Url(string url) { var settings = new ApizrGeneratorSettings { OpenApiPath = url }; @@ -545,22 +545,22 @@ public async Task Can_Build_Generated_Code_From_Url(string url) } #endif - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Obsolete_Attribute(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode(version, filename); generatedCode.Should().Contain("[System.Obsolete]"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_Obsolete_Operations(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { GenerateDeprecatedOperations = false }; @@ -568,11 +568,11 @@ public async Task Can_Generate_Code_Without_Obsolete_Operations(SampleOpenSpecif generatedCode.Should().NotContain(@"/pet/findByTags"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Operation_Name_Template(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { OperationNameTemplate = "{operationName}Async" }; @@ -580,15 +580,15 @@ public async Task Can_Generate_Code_With_Operation_Name_Template(SampleOpenSpeci generatedCode.Should().Contain("FindPetsByStatusAsync"); } - [Theory] - [InlineData(OperationNameGeneratorTypes.Default)] - [InlineData(OperationNameGeneratorTypes.MultipleClientsFromOperationId)] - [InlineData(OperationNameGeneratorTypes.MultipleClientsFromPathSegments)] - [InlineData(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndOperationName)] - [InlineData(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndPathSegments)] - [InlineData(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndOperationId)] - [InlineData(OperationNameGeneratorTypes.SingleClientFromOperationId)] - [InlineData(OperationNameGeneratorTypes.SingleClientFromPathSegments)] + [Test] + [Arguments(OperationNameGeneratorTypes.Default)] + [Arguments(OperationNameGeneratorTypes.MultipleClientsFromOperationId)] + [Arguments(OperationNameGeneratorTypes.MultipleClientsFromPathSegments)] + [Arguments(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndOperationName)] + [Arguments(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndPathSegments)] + [Arguments(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndOperationId)] + [Arguments(OperationNameGeneratorTypes.SingleClientFromOperationId)] + [Arguments(OperationNameGeneratorTypes.SingleClientFromPathSegments)] public async Task Can_Generate_Code_With_OperationNameGenerator(OperationNameGeneratorTypes type) { var version = SampleOpenSpecifications.SwaggerPetstoreJsonV3; @@ -604,11 +604,11 @@ public async Task Can_Generate_Code_With_OperationNameGenerator(OperationNameGen .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_AdditionalProperties(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings @@ -620,11 +620,11 @@ public async Task Can_Generate_Code_Without_AdditionalProperties(SampleOpenSpeci generatedCode.Should().NotContain("Dictionary AdditionalProperties"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_NonNullable_Return_Types(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings @@ -640,11 +640,11 @@ public async Task Can_Generate_Code_With_NonNullable_Return_Types(SampleOpenSpec generatedCode.Should().NotContain("Task"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_NonNullable_Return_Types_In_ApiResponse(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings @@ -661,11 +661,11 @@ public async Task Can_Generate_Code_With_NonNullable_Return_Types_In_ApiResponse generatedCode.Should().NotContain("Task>"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_ImmutableRecords(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { ImmutableRecords = true }; @@ -673,11 +673,11 @@ public async Task Can_Generate_Code_With_ImmutableRecords(SampleOpenSpecificatio generatedCode.Should().Contain("record Pet"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_DynamicQuerystringParameter(SampleOpenSpecifications version, string filename) { var settings = new ApizrGeneratorSettings { UseDynamicQuerystringParameters = true }; diff --git a/src/Refitter.Tests/SwaggerPetstoreMultipleFileTests.cs b/src/Refitter.Tests/SwaggerPetstoreMultipleFileTests.cs index cc8192d4e..c03734ccb 100644 --- a/src/Refitter.Tests/SwaggerPetstoreMultipleFileTests.cs +++ b/src/Refitter.Tests/SwaggerPetstoreMultipleFileTests.cs @@ -2,17 +2,17 @@ using Refitter.Core; using Refitter.Tests.Build; using Refitter.Tests.Resources; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class SwaggerPetstoreMultipleFileTests { - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code(SampleOpenSpecifications version, string filename) { await GenerateCode( @@ -29,11 +29,11 @@ await GenerateCode( }); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_DependencyInjection(SampleOpenSpecifications version, string filename) { await GenerateCode( @@ -51,11 +51,11 @@ await GenerateCode( }); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Apizr(SampleOpenSpecifications version, string filename) { await GenerateCode( @@ -73,12 +73,12 @@ await GenerateCode( }); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generate_Code(SampleOpenSpecifications version, string filename) { @@ -94,12 +94,12 @@ await GenerateCode( }); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generate_Code_With_IDisposable(SampleOpenSpecifications version, string filename) { diff --git a/src/Refitter.Tests/SwaggerPetstoreTests.cs b/src/Refitter.Tests/SwaggerPetstoreTests.cs index 1346821e5..a34df28ec 100644 --- a/src/Refitter.Tests/SwaggerPetstoreTests.cs +++ b/src/Refitter.Tests/SwaggerPetstoreTests.cs @@ -3,39 +3,39 @@ using Refitter.Tests.Build; using Refitter.Tests.Resources; using Refitter.Tests.TestUtilities; -using Xunit; +using TUnit.Core; namespace Refitter.Tests; public class SwaggerPetstoreTests { - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode(version, filename); generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Partial_Interfaces(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode(version, filename); generatedCode.Should().Contain("partial interface"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_Contracts(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode( @@ -45,11 +45,11 @@ public async Task Can_Generate_Code_Without_Contracts(SampleOpenSpecifications v generatedCode.Should().NotContain("class Pet"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_Clients(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode( @@ -59,11 +59,11 @@ public async Task Can_Generate_Code_Without_Clients(SampleOpenSpecifications ver generatedCode.Should().NotContain("ISwaggerPetstore"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_XmlDoc_Code_Comments(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode( @@ -73,11 +73,11 @@ public async Task Can_Generate_Code_With_XmlDoc_Code_Comments(SampleOpenSpecific generatedCode.Should().Contain(""); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_XmlDoc_Code_Comments(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode( @@ -87,11 +87,11 @@ public async Task Can_Generate_Code_Without_XmlDoc_Code_Comments(SampleOpenSpeci generatedCode.Should().NotContain(""); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Default_Namespace(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode( @@ -101,11 +101,11 @@ public async Task Can_Generate_Code_With_Default_Namespace(SampleOpenSpecificati generatedCode.Should().Contain("namespace Some.Other.Namespace"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Fixed_Interface_Name(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -115,11 +115,11 @@ public async Task Can_Generate_Code_With_Fixed_Interface_Name(SampleOpenSpecific generatedCode.Should().Contain("interface ISomeOtherName"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_AutoGenerated_Header(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -128,11 +128,11 @@ public async Task Can_Generate_Code_Without_AutoGenerated_Header(SampleOpenSpeci generatedCode.Should().NotContain("This code was generated by Refitter"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_That_Returns_IApiResponse(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -141,11 +141,11 @@ public async Task Can_Generate_Code_That_Returns_IApiResponse(SampleOpenSpecific generatedCode.Should().Contain("Task>"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Type_Override(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings @@ -164,11 +164,11 @@ public async Task Can_Generate_Code_With_Type_Override(SampleOpenSpecifications generatedCode.Should().Contain("Task AddPet"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Internal_Contract_Types(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -177,11 +177,11 @@ public async Task Can_Generate_Code_With_Internal_Contract_Types(SampleOpenSpeci generatedCode.Should().Contain("internal partial class"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Internal_Interface(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -190,11 +190,11 @@ public async Task Can_Generate_Code_With_Internal_Interface(SampleOpenSpecificat generatedCode.Should().Contain("internal partial interface"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_CancellationToken(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -203,15 +203,15 @@ public async Task Can_Generate_Code_With_CancellationToken(SampleOpenSpecificati generatedCode.Should().Contain("CancellationToken cancellationToken = default"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", true)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", true)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", true)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", true)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", false)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", false)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", false)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", false)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", true)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", true)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", true)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", true)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", false)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", false)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", false)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", false)] public async Task Can_Generate_Code_With_Correct_Usings( SampleOpenSpecifications version, string filename, @@ -220,14 +220,14 @@ public async Task Can_Generate_Code_With_Correct_Usings( var settings = new RefitGeneratorSettings(); settings.UseCancellationTokens = cancellationTokens; var generatedCode = await GenerateCode(version, filename, settings); - Assert.Equal(cancellationTokens, generatedCode.Contains("using System.Threading;")); + generatedCode.Contains("using System.Threading;").Should().Be(cancellationTokens); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithDifferentHeaders, "SwaggerPetstoreWithDifferentHeaders.yaml")] public async Task Can_Generate_Code_With_OperationHeaders_With_Different_Headers(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -236,11 +236,11 @@ public async Task Can_Generate_Code_With_OperationHeaders_With_Different_Headers generatedCode.Should().Contain("[Header(\"api-key\")] string api_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_OperationHeaders(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -249,11 +249,11 @@ public async Task Can_Generate_Code_With_OperationHeaders(SampleOpenSpecificatio generatedCode.Should().Contain("[Header(\"api_key\")] string api_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_OperationHeaders(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -262,11 +262,11 @@ public async Task Can_Generate_Code_Without_OperationHeaders(SampleOpenSpecifica generatedCode.Should().NotContain("[Header(\"api_key\")] string? api_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.yaml")] public async Task Can_Generate_Code_With_Unsafe_AuthenticationHeaders(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -275,11 +275,11 @@ public async Task Can_Generate_Code_With_Unsafe_AuthenticationHeaders(SampleOpen generatedCode.Should().Contain("[Header(\"auth.key\")] string auth_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] public async Task Can_Generate_Code_With_AuthenticationHeaders(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -288,11 +288,11 @@ public async Task Can_Generate_Code_With_AuthenticationHeaders(SampleOpenSpecifi generatedCode.Should().Contain("[Header(\"auth_key\")] string auth_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")] public async Task Can_Generate_Code_With_AuthenticationHeaders_Without_OperationHeaders(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -302,11 +302,11 @@ public async Task Can_Generate_Code_With_AuthenticationHeaders_Without_Operation generatedCode.Should().Contain("[Header(\"auth_key\")] string auth_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_AuthenticationHeaders(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -315,11 +315,11 @@ public async Task Can_Generate_Code_Without_AuthenticationHeaders(SampleOpenSpec generatedCode.Should().NotContain("[Header(\"auth_key\")] string? auth_key"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Accept_Request_Header(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -330,9 +330,9 @@ public async Task Can_Generate_Code_With_Accept_Request_Header(SampleOpenSpecifi generatedCode.Should().NotContain("[Headers(\"Accept: application/json\""); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_No_Accept_Request_Header(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -341,11 +341,11 @@ public async Task Can_Generate_Code_With_No_Accept_Request_Header(SampleOpenSpec generatedCode.Should().NotContain("[Headers(\"Accept"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Multiple_Interfaces(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -354,11 +354,11 @@ public async Task Can_Generate_Code_With_Multiple_Interfaces(SampleOpenSpecifica generatedCode.Should().NotBeNullOrWhiteSpace(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Dependency_Injection_Setup(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -371,11 +371,11 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup(SampleOpenSpecifi generatedCode.Should().Contain("ConfigureRefitClients"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Dependency_Injection_Setup_With_Polly(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -388,11 +388,11 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup_With_Polly(Sample generatedCode.Should().Contain("using Polly"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Dependency_Injection_Setup_Without_Polly(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -405,11 +405,11 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup_Without_Polly(Sam generatedCode.Should().NotContain("using Polly"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Apizr_Setup(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings @@ -434,11 +434,11 @@ public async Task Can_Generate_Code_Apizr_Setup(SampleOpenSpecifications version generatedCode.Should().Contain("AddApizrManagerFor"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Apizr_Setup_With_Polly(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings @@ -463,11 +463,11 @@ public async Task Can_Generate_Code_Apizr_Setup_With_Polly(SampleOpenSpecificati generatedCode.Should().Contain("using Polly"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Apizr_Setup_Without_Polly(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings @@ -492,19 +492,19 @@ public async Task Can_Generate_Code_Apizr_Setup_Without_Polly(SampleOpenSpecific generatedCode.Should().NotContain("using Polly"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.Unset)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.Unset)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.Unset)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.Unset)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByTag)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByTag)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByTag)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByTag)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.Unset)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.Unset)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.Unset)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.Unset)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByTag)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByTag)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByTag)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByTag)] public async Task Can_Generate_Code_GeneratedCode_Attribute( SampleOpenSpecifications version, string filename, @@ -516,11 +516,11 @@ public async Task Can_Generate_Code_GeneratedCode_Attribute( generatedCode.Should().Contain("[System.CodeDom.Compiler.GeneratedCode(\"Refitter\""); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json", MultipleInterfaces.ByEndpoint)] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml", MultipleInterfaces.ByEndpoint)] public async Task Can_Generate_Code_With_Multiple_Interfaces_And_OperationNameTemplate( SampleOpenSpecifications version, string filename, @@ -533,12 +533,12 @@ public async Task Can_Generate_Code_With_Multiple_Interfaces_And_OperationNameTe generatedCode.Should().Contain("ExecuteAsync("); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generated_Code(SampleOpenSpecifications version, string filename) { @@ -549,12 +549,12 @@ public async Task Can_Build_Generated_Code(SampleOpenSpecifications version, str .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generated_Code_With_IApiResponse(SampleOpenSpecifications version, string filename) { @@ -567,8 +567,8 @@ public async Task Can_Build_Generated_Code_With_IApiResponse(SampleOpenSpecifica .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] public async Task Can_Build_Generated_Code_With_IObservableResponse(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -581,12 +581,12 @@ public async Task Can_Build_Generated_Code_With_IObservableResponse(SampleOpenSp .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generated_Code_With_Multiple_Interfaces(SampleOpenSpecifications version, string filename) { @@ -599,12 +599,12 @@ public async Task Can_Build_Generated_Code_With_Multiple_Interfaces(SampleOpenSp .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generated_Code_With_Multiple_Interfaces_ByTag(SampleOpenSpecifications version, string filename) { @@ -618,11 +618,11 @@ public async Task Can_Build_Generated_Code_With_Multiple_Interfaces_ByTag(Sample } #if !DEBUG - [Theory] - [InlineData("http://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.json")] - [InlineData("http://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.yaml")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.json")] - [InlineData("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.yaml")] + [Test] + [Arguments("http://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.json")] + [Arguments("http://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.yaml")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.json")] + [Arguments("https://raw.githubusercontent.com/christianhelle/refitter/main/test/OpenAPI/v3.0/petstore.yaml")] public async Task Can_Build_Generated_Code_From_Url(string url) { var settings = new RefitGeneratorSettings { OpenApiPath = url }; @@ -654,22 +654,22 @@ private static async Task GenerateCode( return sut.Generate(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Obsolete_Attribute(SampleOpenSpecifications version, string filename) { var generatedCode = await GenerateCode(version, filename); generatedCode.Should().Contain("[System.Obsolete]"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_Obsolete_Operations(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -678,11 +678,11 @@ public async Task Can_Generate_Code_Without_Obsolete_Operations(SampleOpenSpecif generatedCode.Should().NotContain(@"/pet/findByTags"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_Operation_Name_Template(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -691,15 +691,15 @@ public async Task Can_Generate_Code_With_Operation_Name_Template(SampleOpenSpeci generatedCode.Should().Contain("FindPetsByStatusAsync"); } - [Theory] - [InlineData(OperationNameGeneratorTypes.Default)] - [InlineData(OperationNameGeneratorTypes.MultipleClientsFromOperationId)] - [InlineData(OperationNameGeneratorTypes.MultipleClientsFromPathSegments)] - [InlineData(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndOperationName)] - [InlineData(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndPathSegments)] - [InlineData(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndOperationId)] - [InlineData(OperationNameGeneratorTypes.SingleClientFromOperationId)] - [InlineData(OperationNameGeneratorTypes.SingleClientFromPathSegments)] + [Test] + [Arguments(OperationNameGeneratorTypes.Default)] + [Arguments(OperationNameGeneratorTypes.MultipleClientsFromOperationId)] + [Arguments(OperationNameGeneratorTypes.MultipleClientsFromPathSegments)] + [Arguments(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndOperationName)] + [Arguments(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndPathSegments)] + [Arguments(OperationNameGeneratorTypes.MultipleClientsFromFirstTagAndOperationId)] + [Arguments(OperationNameGeneratorTypes.SingleClientFromOperationId)] + [Arguments(OperationNameGeneratorTypes.SingleClientFromPathSegments)] public async Task Can_Generate_Code_With_OperationNameGenerator(OperationNameGeneratorTypes type) { var version = SampleOpenSpecifications.SwaggerPetstoreJsonV3; @@ -715,11 +715,11 @@ public async Task Can_Generate_Code_With_OperationNameGenerator(OperationNameGen .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_Without_AdditionalProperties(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -729,11 +729,11 @@ public async Task Can_Generate_Code_Without_AdditionalProperties(SampleOpenSpeci generatedCode.Should().NotContain("Dictionary AdditionalProperties"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_NonNullable_Return_Types(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -747,11 +747,11 @@ public async Task Can_Generate_Code_With_NonNullable_Return_Types(SampleOpenSpec generatedCode.Should().NotContain("Task"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_NonNullable_Return_Types_In_ApiResponse(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings(); @@ -766,11 +766,11 @@ public async Task Can_Generate_Code_With_NonNullable_Return_Types_In_ApiResponse generatedCode.Should().NotContain("Task>"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_ImmutableRecords(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings { ImmutableRecords = true }; @@ -778,11 +778,11 @@ public async Task Can_Generate_Code_With_ImmutableRecords(SampleOpenSpecificatio generatedCode.Should().Contain("record Pet"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_DynamicQuerystringParameters(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings { UseDynamicQuerystringParameters = true }; @@ -795,11 +795,11 @@ public async Task Can_Generate_Code_With_DynamicQuerystringParameters(SampleOpen .And.Contain("public class LoginUserQueryParams"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Code_With_IDisposable(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings { GenerateDisposableClients = true }; @@ -807,12 +807,12 @@ public async Task Can_Generate_Code_With_IDisposable(SampleOpenSpecifications ve generatedCode.Should().Contain("IDisposable"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Build_Generated_Code_With_IDisposable(SampleOpenSpecifications version, string filename) { @@ -825,11 +825,11 @@ public async Task Can_Build_Generated_Code_With_IDisposable(SampleOpenSpecificat .BeTrue(); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Interface_With_Summary(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings { GenerateXmlDocCodeComments = true }; @@ -837,11 +837,11 @@ public async Task Can_Generate_Interface_With_Summary(SampleOpenSpecifications v generatedCode.Should().Contain("Swagger Petstore"); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] public async Task Can_Generate_Interfaces_Filtered_By_Path_Match(SampleOpenSpecifications version, string filename) { var settings = new RefitGeneratorSettings { IncludePathMatches = ["^/pet.*"] }; @@ -850,12 +850,12 @@ public async Task Can_Generate_Interfaces_Filtered_By_Path_Match(SampleOpenSpeci generatedCode.Should().Contain("\"/pet/{petId}\""); } - [Theory] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] + [Test] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")] #if !DEBUG - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] - [InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreJsonV2, "SwaggerPetstore.json")] + [Arguments(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")] #endif public async Task Can_Import_Contracts_Namespace(SampleOpenSpecifications version, string filename) { diff --git a/src/Refitter.Tests/XmlDocumentationGeneratorTests.cs b/src/Refitter.Tests/XmlDocumentationGeneratorTests.cs index 42316b6a9..63185b0df 100644 --- a/src/Refitter.Tests/XmlDocumentationGeneratorTests.cs +++ b/src/Refitter.Tests/XmlDocumentationGeneratorTests.cs @@ -3,7 +3,7 @@ using NSwag; using NSwag.CodeGeneration.CSharp.Models; using Refitter.Core; -using Xunit; +using TUnit.Core; namespace Refitter.Tests { @@ -25,7 +25,7 @@ private static CSharpOperationModel CreateOperationModel(OpenApiOperation operat return generator.CreateOperationModel(operation); } - [Fact] + [Test] public void Can_Generate_Interface_Doc_Without_Linebreaks() { var docs = new StringBuilder(); @@ -34,7 +34,7 @@ public void Can_Generate_Interface_Doc_Without_Linebreaks() docs.ToString().Trim().Should().Be("/// Test"); } - [Fact] + [Test] public void Can_Generate_Interface_Doc_With_Linebreaks() { var docs = new StringBuilder(); @@ -45,7 +45,7 @@ public void Can_Generate_Interface_Doc_With_Linebreaks() .And.Contain("Test"); } - [Fact] + [Test] public void Can_Generate_Method_Summary() { var docs = new StringBuilder(); @@ -54,7 +54,7 @@ public void Can_Generate_Method_Summary() docs.ToString().Trim().Should().StartWith("/// TestSummary"); } - [Fact] + [Test] public void Can_Generate_Method_Remarks() { var docs = new StringBuilder(); @@ -63,7 +63,7 @@ public void Can_Generate_Method_Remarks() docs.ToString().Should().Contain("/// TestDescription"); } - [Fact] + [Test] public void Can_Generate_Method_Param() { var docs = new StringBuilder(); @@ -75,7 +75,7 @@ public void Can_Generate_Method_Param() docs.ToString().Should().Contain("/// TestParameter"); } - [Fact] + [Test] public void Can_Generate_ApizrRequestOptions_Param() { var docs = new StringBuilder(); @@ -87,7 +87,7 @@ public void Can_Generate_ApizrRequestOptions_Param() docs.ToString().Should().Contain("/// The instance to pass through the request."); } - [Fact] + [Test] public void Can_Generate_DynamicQuerystring_Param() { var docs = new StringBuilder(); @@ -99,7 +99,7 @@ public void Can_Generate_DynamicQuerystring_Param() docs.ToString().Should().Contain("/// The dynamic querystring parameter wrapping all others."); } - [Fact] + [Test] public void Can_Generate_CancellationToken_Param() { var docs = new StringBuilder(); @@ -111,7 +111,7 @@ public void Can_Generate_CancellationToken_Param() docs.ToString().Should().Contain("/// The cancellation token to cancel the request."); } - [Fact] + [Test] public void Can_Generate_Method_Returns() { var docs = new StringBuilder(); @@ -131,7 +131,7 @@ public void Can_Generate_Method_Returns() docs.ToString().Should().Contain("/// TestResponse"); } - [Fact] + [Test] public void Can_Generate_Method_Returns_With_Empty_Result() { var docs = new StringBuilder(); @@ -148,7 +148,7 @@ public void Can_Generate_Method_Returns_With_Empty_Result() .And.Contain("Task"); } - [Fact] + [Test] public void Can_Generate_Method_Returns_Without_Result() { var docs = new StringBuilder(); @@ -158,7 +158,7 @@ public void Can_Generate_Method_Returns_Without_Result() .And.Contain("Task"); } - [Fact] + [Test] public void Can_Generate_Method_Throws() { var docs = new StringBuilder(); @@ -167,7 +167,7 @@ public void Can_Generate_Method_Throws() docs.ToString().Should().Contain("/// "); } - [Fact] + [Test] public void Can_Generate_Method_Throws_With_Response_Code() { this._generator = new XmlDocumentationGenerator(new RefitGeneratorSettings @@ -185,7 +185,7 @@ public void Can_Generate_Method_Throws_With_Response_Code() .And.Contain("400"); } - [Fact] + [Test] public void Can_Generate_Method_Throws_Without_Response_Code() { this._generator = new XmlDocumentationGenerator(new RefitGeneratorSettings @@ -203,7 +203,7 @@ public void Can_Generate_Method_Throws_Without_Response_Code() .And.NotContain("400"); } - [Fact] + [Test] public void Can_Generate_Method_With_IApiResponse() { this._generator = new XmlDocumentationGenerator(new RefitGeneratorSettings