diff --git a/.gitignore b/.gitignore
index 64d61479c..01de113a5 100644
--- a/.gitignore
+++ b/.gitignore
@@ -278,3 +278,7 @@ test/Apizr/GeneratedCode
test/MultipleFiles/**/*.cs
test/HelloWorld/HelloWorld/Output.cs
test/MSBuild/refitter.msbuild/
+
+# Install scripts
+dotnet-install.sh
+install.sh
diff --git a/src/Refitter.Core/ApizrRegistrationGenerator.cs b/src/Refitter.Core/ApizrRegistrationGenerator.cs
index 21872a3f5..099ebc467 100644
--- a/src/Refitter.Core/ApizrRegistrationGenerator.cs
+++ b/src/Refitter.Core/ApizrRegistrationGenerator.cs
@@ -34,7 +34,7 @@ public static string Generate(
.CapitalizeFirstCharacter()
: string.Empty;
- if(isDependencyInjectionExtension)
+ if (isDependencyInjectionExtension)
methodName = hasManyApis ? $"Configure{formatedTitle}ApizrManagers" : $"Configure{formatedTitle}ApizrManager";
else
methodName = hasManyApis ? $"Build{formatedTitle}ApizrManagers" : $"Build{formatedTitle}ApizrManager";
@@ -209,7 +209,7 @@ public static string Generate(
$$"""
using Mapster;
""");
- if(isDependencyInjectionExtension)
+ if (isDependencyInjectionExtension)
usingsCodeBuilder.AppendLine(
$$"""
using MapsterMapper;
@@ -225,7 +225,7 @@ public static string Generate(
break;
}
- if(settings.ApizrSettings.WithPriority)
+ if (settings.ApizrSettings.WithPriority)
{
apizrPackages.Add(ApizrPackages.Apizr_Integrations_Fusillade);
optionsCodeBuilder.AppendLine();
@@ -381,7 +381,7 @@ public static partial class IServiceCollectionExtensions
///
/// Adjust common shared options
///
- """);
+ """);
}
code.AppendLine(
@@ -409,7 +409,7 @@ public static partial class IServiceCollectionExtensions
""");
for (int i = 0; i < interfaceNames.Length; i++)
{
- if(i > 0)
+ if (i > 0)
code.AppendLine();
code.Append(
@@ -462,7 +462,7 @@ public static partial class IServiceCollectionExtensions
///
/// Adjust common shared options
///
- """);
+ """);
}
code.AppendLine(
@@ -471,11 +471,11 @@ public static partial class IServiceCollectionExtensions
this IServiceCollection services,
""");
- code.AppendLine(hasBaseUrl ?
+ code.AppendLine(hasBaseUrl ?
$$"""
Action? optionsBuilder = null)
{
- """ :
+ """ :
$$"""
Action optionsBuilder)
{
@@ -491,7 +491,7 @@ public static partial class IServiceCollectionExtensions
#pragma warning disable RS1035
code.Remove(code.Length - Environment.NewLine.Length, Environment.NewLine.Length);
#pragma warning restore RS1035
- }
+ }
#endregion
}
@@ -533,7 +533,7 @@ public static partial class ApizrRegistration
///
/// Adjust common shared options
///
- """);
+ """);
}
code.AppendLine(
@@ -599,7 +599,7 @@ public static partial class ApizrRegistration
///
/// Adjust common shared options
///
- """);
+ """);
}
code.AppendLine(
@@ -614,7 +614,7 @@ public static partial class ApizrRegistration
#pragma warning disable RS1035
code.Remove(code.Length - Environment.NewLine.Length, Environment.NewLine.Length);
#pragma warning restore RS1035
- }
+ }
#endregion
}
diff --git a/src/Refitter.Core/DependencyInjectionGenerator.cs b/src/Refitter.Core/DependencyInjectionGenerator.cs
index ee29ddf2b..b39fef46a 100644
--- a/src/Refitter.Core/DependencyInjectionGenerator.cs
+++ b/src/Refitter.Core/DependencyInjectionGenerator.cs
@@ -1,4 +1,4 @@
-using System.Globalization;
+using System.Globalization;
using System.Text;
namespace Refitter.Core;
@@ -29,7 +29,7 @@ public static string Generate(
Action? builder = default,
RefitSettings? settings = default)
""";
-
+
var configureRefitClient = string.IsNullOrEmpty(iocSettings.BaseUrl)
? ".ConfigureHttpClient(c => c.BaseAddress = baseUrl)"
: $".ConfigureHttpClient(c => c.BaseAddress = new Uri(\"{iocSettings.BaseUrl}\"))";
@@ -76,7 +76,7 @@ public static partial class IServiceCollectionExtensions
"""");
foreach (var interfaceName in interfaceNames)
{
- var clientBuilderName = $"clientBuilder{interfaceName}";
+ var clientBuilderName = $"clientBuilder{interfaceName}";
code.Append(
$$"""
var {{clientBuilderName}} = services
@@ -89,7 +89,7 @@ public static partial class IServiceCollectionExtensions
code.AppendLine();
code.Append($" .AddHttpMessageHandler<{httpMessageHandler}>()");
}
-
+
code.Append(";");
code.AppendLine();
@@ -108,7 +108,7 @@ public static partial class IServiceCollectionExtensions
TimeSpan.FromSeconds({{durationString}}),
{{iocSettings.MaxRetryCount}})));
""");
- }
+ }
else if (iocSettings.TransientErrorHandler == TransientErrorHandler.HttpResilience)
{
var durationString = iocSettings.FirstBackoffRetryInSeconds.ToString(CultureInfo.InvariantCulture);
@@ -132,7 +132,7 @@ public static partial class IServiceCollectionExtensions
code.AppendLine($" builder?.Invoke({clientBuilderName});");
code.AppendLine();
}
-
+
#pragma warning disable RS1035
code.Remove(code.Length - Environment.NewLine.Length, Environment.NewLine.Length);
#pragma warning restore RS1035
@@ -144,4 +144,4 @@ public static partial class IServiceCollectionExtensions
code.AppendLine();
return code.ToString();
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Core/EnumExtensions.cs b/src/Refitter.Core/EnumExtensions.cs
index 98bee4830..66658f01e 100644
--- a/src/Refitter.Core/EnumExtensions.cs
+++ b/src/Refitter.Core/EnumExtensions.cs
@@ -1,4 +1,4 @@
-using System.Collections.Concurrent;
+using System.Collections.Concurrent;
using System.ComponentModel;
using System.Reflection;
diff --git a/src/Refitter.Core/FilenameConstants.cs b/src/Refitter.Core/FilenameConstants.cs
index e629cc23e..d4d9f1709 100644
--- a/src/Refitter.Core/FilenameConstants.cs
+++ b/src/Refitter.Core/FilenameConstants.cs
@@ -9,12 +9,12 @@ public static class TypenameConstants
/// The typename for Refit interfaces.
///
public const string RefitInterfaces = "RefitInterfaces";
-
+
///
/// The typename for contracts.
///
public const string Contracts = "Contracts";
-
+
///
/// The typename for dependency injection.
///
diff --git a/src/Refitter.Core/IdentifierUtils.cs b/src/Refitter.Core/IdentifierUtils.cs
index 082b0022b..223bb9fde 100644
--- a/src/Refitter.Core/IdentifierUtils.cs
+++ b/src/Refitter.Core/IdentifierUtils.cs
@@ -1,4 +1,4 @@
-namespace Refitter.Core;
+namespace Refitter.Core;
internal static class IdentifierUtils
{
diff --git a/src/Refitter.Core/OpenApiDocumentFactory.cs b/src/Refitter.Core/OpenApiDocumentFactory.cs
index 2889c97bf..5d622de15 100644
--- a/src/Refitter.Core/OpenApiDocumentFactory.cs
+++ b/src/Refitter.Core/OpenApiDocumentFactory.cs
@@ -1,4 +1,4 @@
-using System.Net;
+using System.Net;
using Microsoft.OpenApi.Extensions;
using Microsoft.OpenApi.Readers;
using NSwag;
@@ -37,7 +37,7 @@ public static async Task CreateAsync(string openApiPath)
return await OpenApiDocument.FromJsonAsync(json);
}
catch
- {
+ {
return await CreateUsingNSwagAsync(openApiPath);
}
}
@@ -47,13 +47,13 @@ private static async Task CreateUsingNSwagAsync(string openApiP
if (IsHttp(openApiPath))
{
var content = await GetHttpContent(openApiPath);
- return IsYaml(openApiPath)
- ? await OpenApiYamlDocument.FromYamlAsync(content)
+ return IsYaml(openApiPath)
+ ? await OpenApiYamlDocument.FromYamlAsync(content)
: await OpenApiDocument.FromJsonAsync(content);
}
- return IsYaml(openApiPath)
- ? await OpenApiYamlDocument.FromFileAsync(openApiPath)
+ return IsYaml(openApiPath)
+ ? await OpenApiYamlDocument.FromFileAsync(openApiPath)
: await OpenApiDocument.FromFileAsync(openApiPath);
}
@@ -111,4 +111,4 @@ private static bool IsYaml(string path)
{
return path.EndsWith("yaml") || path.EndsWith("yml");
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Core/OperationNameGenerator.cs b/src/Refitter.Core/OperationNameGenerator.cs
index 3b4ac170d..b622afda8 100644
--- a/src/Refitter.Core/OperationNameGenerator.cs
+++ b/src/Refitter.Core/OperationNameGenerator.cs
@@ -1,4 +1,4 @@
-using System.Diagnostics.CodeAnalysis;
+using System.Diagnostics.CodeAnalysis;
using NSwag;
using NSwag.CodeGeneration.OperationNameGenerators;
using GeneratorType = Refitter.Core.OperationNameGeneratorTypes;
@@ -93,4 +93,4 @@ private bool CheckForDuplicateOperationIds(
return operationNames.Distinct().Count() != operationNames.Count;
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Core/ParameterExtractor.cs b/src/Refitter.Core/ParameterExtractor.cs
index 51f4ac8f3..b28fe5d44 100644
--- a/src/Refitter.Core/ParameterExtractor.cs
+++ b/src/Refitter.Core/ParameterExtractor.cs
@@ -142,9 +142,9 @@ private static string GetQueryAttribute(CSharpParameterModel parameter, RefitGen
{ parameter.IsDate: true, settings.CodeGeneratorSettings.DateFormat: not null }
=> $"Query(Format = \"{settings.CodeGeneratorSettings?.DateFormat}\")",
{
- parameter.IsDateOrDateTime: true, parameter.Schema.Format: "date-time",
- settings.CodeGeneratorSettings.DateTimeFormat: not null
- } => $"Query(Format = \"{settings.CodeGeneratorSettings?.DateTimeFormat}\")",
+ parameter.IsDateOrDateTime: true, parameter.Schema.Format: "date-time",
+ settings.CodeGeneratorSettings.DateTimeFormat: not null
+ } => $"Query(Format = \"{settings.CodeGeneratorSettings?.DateTimeFormat}\")",
_ => "Query",
};
}
diff --git a/src/Refitter.Core/RefitGeneratedCode.cs b/src/Refitter.Core/RefitGeneratedCode.cs
index cf91d6c31..95595c5d7 100644
--- a/src/Refitter.Core/RefitGeneratedCode.cs
+++ b/src/Refitter.Core/RefitGeneratedCode.cs
@@ -11,4 +11,4 @@ public override string ToString()
{
return SourceCode;
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Core/RefitInterfaceGenerator.cs b/src/Refitter.Core/RefitInterfaceGenerator.cs
index 0a15a43c5..8f60841f6 100644
--- a/src/Refitter.Core/RefitInterfaceGenerator.cs
+++ b/src/Refitter.Core/RefitInterfaceGenerator.cs
@@ -84,7 +84,7 @@ private string GenerateInterfaceBody(out string? dynamicQuerystringParameters)
.AppendLine($"{Separator}{Separator}{returnType} {operationName}({parametersString});")
.AppendLine();
- if (parametersString.Contains("?") && settings is {OptionalParameters: true, ApizrSettings: not null})
+ if (parametersString.Contains("?") && settings is { OptionalParameters: true, ApizrSettings: not null })
{
if (settings.GenerateXmlDocCodeComments)
{
diff --git a/src/Refitter.Core/SchemaCleaner.cs b/src/Refitter.Core/SchemaCleaner.cs
index be48b07be..f1650655a 100644
--- a/src/Refitter.Core/SchemaCleaner.cs
+++ b/src/Refitter.Core/SchemaCleaner.cs
@@ -1,4 +1,4 @@
-using System.Text.RegularExpressions;
+using System.Text.RegularExpressions;
using NJsonSchema;
using NSwag;
diff --git a/src/Refitter.Core/Settings/CacheProviderType.cs b/src/Refitter.Core/Settings/CacheProviderType.cs
index 934a3646c..3977af1fa 100644
--- a/src/Refitter.Core/Settings/CacheProviderType.cs
+++ b/src/Refitter.Core/Settings/CacheProviderType.cs
@@ -1,4 +1,4 @@
-namespace Refitter.Core
+namespace Refitter.Core
{
///
/// Enumeration of cache provider types.
@@ -9,30 +9,30 @@ public enum CacheProviderType
/// No cache provider.
///
None,
-
+
///
/// Akavache cache provider.
///
Akavache,
-
+
///
/// MonkeyCache cache provider.
///
MonkeyCache,
-
+
///
/// In-memory cache provider.
///
InMemory,
-
+
///
/// Distributed cache as string provider.
///
DistributedAsString,
-
+
///
/// Distributed cache as byte array provider.
///
DistributedAsByteArray,
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Core/Settings/MappingProviderType.cs b/src/Refitter.Core/Settings/MappingProviderType.cs
index 3f743984d..f91bb2db6 100644
--- a/src/Refitter.Core/Settings/MappingProviderType.cs
+++ b/src/Refitter.Core/Settings/MappingProviderType.cs
@@ -1,4 +1,4 @@
-namespace Refitter.Core
+namespace Refitter.Core
{
///
/// Enumeration of mapping provider types.
@@ -9,15 +9,15 @@ public enum MappingProviderType
/// No mapping provider.
///
None,
-
+
///
/// AutoMapper mapping provider.
///
AutoMapper,
-
+
///
/// Mapster mapping provider.
///
Mapster
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Core/Settings/OperationNameGeneratorTypes.cs b/src/Refitter.Core/Settings/OperationNameGeneratorTypes.cs
index d3d074795..6e7a89c48 100644
--- a/src/Refitter.Core/Settings/OperationNameGeneratorTypes.cs
+++ b/src/Refitter.Core/Settings/OperationNameGeneratorTypes.cs
@@ -1,4 +1,4 @@
-using System.ComponentModel;
+using System.ComponentModel;
namespace Refitter.Core;
diff --git a/src/Refitter.Core/Settings/RefitGeneratorSettings.cs b/src/Refitter.Core/Settings/RefitGeneratorSettings.cs
index 1a014dc12..87ff8f9cc 100644
--- a/src/Refitter.Core/Settings/RefitGeneratorSettings.cs
+++ b/src/Refitter.Core/Settings/RefitGeneratorSettings.cs
@@ -15,7 +15,7 @@ public class RefitGeneratorSettings
/// Default output folder for generated files.
///
public const string DefaultOutputFolder = "./Generated";
-
+
///
/// Default namespace for generated code.
///
@@ -365,7 +365,7 @@ payloads with (yet) unknown types are offered by newer versions of an API
///
/// Gets or sets the parameter name generator for customizing parameter names.
///
- [JsonIgnore]
+ [JsonIgnore]
public IParameterNameGenerator? ParameterNameGenerator { get; set; }
///
diff --git a/src/Refitter.Core/StringCasingExtensions.cs b/src/Refitter.Core/StringCasingExtensions.cs
index 19bba7daa..e39ac3ab0 100644
--- a/src/Refitter.Core/StringCasingExtensions.cs
+++ b/src/Refitter.Core/StringCasingExtensions.cs
@@ -77,4 +77,4 @@ public static string ConvertSnakeCaseToPascalCase(this string str)
return string.Join(string.Empty, parts);
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Core/WellKnownNamesspaces.cs b/src/Refitter.Core/WellKnownNamesspaces.cs
index bee1b6ff9..7af36180d 100644
--- a/src/Refitter.Core/WellKnownNamesspaces.cs
+++ b/src/Refitter.Core/WellKnownNamesspaces.cs
@@ -13,4 +13,4 @@ public static string TrimImportedNamespaces(string returnTypeParameter) =>
.Select(s => returnTypeParameter.Replace(s + ".", string.Empty))
.FirstOrDefault() ??
returnTypeParameter;
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.MSBuild/RefitterGenerateTask.cs b/src/Refitter.MSBuild/RefitterGenerateTask.cs
index 2b25a75d5..cf2c810c7 100644
--- a/src/Refitter.MSBuild/RefitterGenerateTask.cs
+++ b/src/Refitter.MSBuild/RefitterGenerateTask.cs
@@ -63,14 +63,14 @@ private List StartProcess(string file)
var expectedFiles = GetExpectedGeneratedFiles(file);
var assembly = Assembly.GetExecutingAssembly();
var packageFolder = Path.GetDirectoryName(assembly.Location);
- var seperator = Path.DirectorySeparatorChar;
- var refitterDll = $"{packageFolder}{seperator}..{seperator}net8.0{seperator}refitter.dll";
+ var separator = Path.DirectorySeparatorChar;
+ var refitterDll = $"{packageFolder}{separator}..{separator}net8.0{separator}refitter.dll";
List installedRuntimes = GetInstalledDotnetRuntimes();
if (installedRuntimes.Any(r => r.StartsWith("Microsoft.NETCore.App 9.")))
{
// Use .NET 9 version if available
- refitterDll = $"{packageFolder}{seperator}..{seperator}net9.0{seperator}refitter.dll";
+ refitterDll = $"{packageFolder}{separator}..{separator}net9.0{separator}refitter.dll";
TryLogCommandLine("Detected .NET 9 runtime. Using .NET 9 version of Refitter.");
}
else
@@ -112,6 +112,10 @@ private List StartProcess(string file)
return expectedFiles.Where(File.Exists).ToList();
}
+ ///
+ /// Gets the list of installed .NET runtimes by executing 'dotnet --list-runtimes'
+ ///
+ /// List of installed runtime strings
private static List GetInstalledDotnetRuntimes()
{
var installedRuntimes = new List();
@@ -135,6 +139,11 @@ private static List GetInstalledDotnetRuntimes()
return installedRuntimes;
}
+ ///
+ /// Determines the expected output files that should be generated from a .refitter configuration file
+ ///
+ /// Path to the .refitter configuration file
+ /// List of expected output file paths
private List GetExpectedGeneratedFiles(string refitterFilePath)
{
try
@@ -150,10 +159,8 @@ private List GetExpectedGeneratedFiles(string refitterFilePath)
var hasDependencyInjectionSettings = refitterContent.Contains("\"dependencyInjectionSettings\"");
// If contractsOutputFolder is specified, automatically enable multiple files
- if (!string.IsNullOrWhiteSpace(contractsOutputFolder))
- {
- generateMultipleFiles = true;
- }
+ bool hasContractsOutputFolder = !string.IsNullOrWhiteSpace(contractsOutputFolder);
+ generateMultipleFiles = generateMultipleFiles || hasContractsOutputFolder;
// Default output filename based on .refitter filename if not specified
if (string.IsNullOrWhiteSpace(outputFilename))
@@ -169,14 +176,14 @@ private List GetExpectedGeneratedFiles(string refitterFilePath)
// Multiple files mode
var baseOutputFolder = !string.IsNullOrWhiteSpace(outputFolder) ? outputFolder : "./Generated";
var interfaceOutputPath = Path.GetFullPath(Path.Combine(refitterFileDirectory, baseOutputFolder, "RefitInterfaces.cs"));
- var contractsOutputPath = Path.GetFullPath(Path.Combine(refitterFileDirectory,
- !string.IsNullOrWhiteSpace(contractsOutputFolder) ? contractsOutputFolder : baseOutputFolder,
+ var contractsOutputPath = Path.GetFullPath(Path.Combine(refitterFileDirectory,
+ !string.IsNullOrWhiteSpace(contractsOutputFolder) ? contractsOutputFolder : baseOutputFolder,
"Contracts.cs"));
var diOutputPath = Path.GetFullPath(Path.Combine(refitterFileDirectory, baseOutputFolder, "DependencyInjection.cs"));
generatedFiles.Add(interfaceOutputPath);
generatedFiles.Add(contractsOutputPath);
-
+
// DependencyInjection.cs is only generated if dependencyInjectionSettings are specified
if (hasDependencyInjectionSettings)
{
@@ -246,6 +253,12 @@ private void TryLogError(string text)
}
}
+ ///
+ /// Extracts a string value from a JSON property using regex pattern matching
+ ///
+ /// The JSON content to search
+ /// The name of the property to extract
+ /// The extracted string value, or null if not found
private static string? ExtractJsonStringValue(string json, string propertyName)
{
// Simple regex to extract string values from JSON
@@ -255,6 +268,12 @@ private void TryLogError(string text)
return match.Success ? match.Groups[1].Value : null;
}
+ ///
+ /// Extracts a boolean value from a JSON property using regex pattern matching
+ ///
+ /// The JSON content to search
+ /// The name of the property to extract
+ /// True if the property value is "true", false otherwise
private static bool ExtractJsonBoolValue(string json, string propertyName)
{
// Simple regex to extract boolean values from JSON
diff --git a/src/Refitter.SourceGenerator.Tests/CustomOutputFolderGeneratorTests.cs b/src/Refitter.SourceGenerator.Tests/CustomOutputFolderGeneratorTests.cs
index 03f670aba..387e3724c 100644
--- a/src/Refitter.SourceGenerator.Tests/CustomOutputFolderGeneratorTests.cs
+++ b/src/Refitter.SourceGenerator.Tests/CustomOutputFolderGeneratorTests.cs
@@ -1,4 +1,4 @@
-using FluentAssertions;
+using FluentAssertions;
using Refit;
using Refitter.Tests.CustomGenerated;
using Xunit;
@@ -16,4 +16,4 @@ public void Can_Resolve_Refit_Interface() =>
RestService.For("https://petstore3.swagger.io/api/v3")
.Should()
.NotBeNull();
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.SourceGenerator.Tests/DelegatingHandlers.cs b/src/Refitter.SourceGenerator.Tests/DelegatingHandlers.cs
index c5e6e6995..080a1353a 100644
--- a/src/Refitter.SourceGenerator.Tests/DelegatingHandlers.cs
+++ b/src/Refitter.SourceGenerator.Tests/DelegatingHandlers.cs
@@ -4,7 +4,7 @@ public class EmptyMessageHandler : DelegatingHandler
{
}
- public class AnotherEmptyMessageHandler : DelegatingHandler
+ public class AnotherEmptyMessageHandler : DelegatingHandler
{
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.SourceGenerator.Tests/MultipleInterfaceByTagGeneratorTests.cs b/src/Refitter.SourceGenerator.Tests/MultipleInterfaceByTagGeneratorTests.cs
index 3fb137ab4..d9c9442a9 100644
--- a/src/Refitter.SourceGenerator.Tests/MultipleInterfaceByTagGeneratorTests.cs
+++ b/src/Refitter.SourceGenerator.Tests/MultipleInterfaceByTagGeneratorTests.cs
@@ -1,4 +1,4 @@
-using FluentAssertions;
+using FluentAssertions;
using Refit;
using Refitter.Tests.AdditionalFiles.ByTag;
using Xunit;
@@ -25,4 +25,4 @@ public void Can_Resolve_Refit_Interface(Type type) =>
RestService.For(type, "https://petstore3.swagger.io/api/v3")
.Should()
.NotBeNull();
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.SourceGenerator.Tests/MultipleInterfaceGeneratorTests.cs b/src/Refitter.SourceGenerator.Tests/MultipleInterfaceGeneratorTests.cs
index 9d3b2da56..83e380afc 100644
--- a/src/Refitter.SourceGenerator.Tests/MultipleInterfaceGeneratorTests.cs
+++ b/src/Refitter.SourceGenerator.Tests/MultipleInterfaceGeneratorTests.cs
@@ -57,4 +57,4 @@ public void Can_Resolve_Refit_Interface(Type type) =>
RestService.For(type, "https://petstore3.swagger.io/api/v3")
.Should()
.NotBeNull();
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.SourceGenerator.Tests/OptionalParametersGeneratorTest.cs b/src/Refitter.SourceGenerator.Tests/OptionalParametersGeneratorTest.cs
index dc338152e..0ab440c43 100644
--- a/src/Refitter.SourceGenerator.Tests/OptionalParametersGeneratorTest.cs
+++ b/src/Refitter.SourceGenerator.Tests/OptionalParametersGeneratorTest.cs
@@ -1,4 +1,4 @@
-using FluentAssertions;
+using FluentAssertions;
using Refit;
using Refitter.Tests.AdditionalFiles.OptionalParameters;
using Xunit;
@@ -19,4 +19,4 @@ public void Can_Resolve_Refit_Interface() =>
RestService.For("https://petstore3.swagger.io/api/v3")
.Should()
.NotBeNull();
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.SourceGenerator.Tests/SingleInterfaceGeneratorTest.cs b/src/Refitter.SourceGenerator.Tests/SingleInterfaceGeneratorTest.cs
index 7de77f853..462062695 100644
--- a/src/Refitter.SourceGenerator.Tests/SingleInterfaceGeneratorTest.cs
+++ b/src/Refitter.SourceGenerator.Tests/SingleInterfaceGeneratorTest.cs
@@ -1,4 +1,4 @@
-using FluentAssertions;
+using FluentAssertions;
using Refit;
using Refitter.Tests.AdditionalFiles.SingeInterface;
using Xunit;
@@ -19,4 +19,4 @@ public void Can_Resolve_Refit_Interface() =>
RestService.For("https://petstore3.swagger.io/api/v3")
.Should()
.NotBeNull();
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Build/BuildHelper.cs b/src/Refitter.Tests/Build/BuildHelper.cs
index f98a99bba..915656804 100644
--- a/src/Refitter.Tests/Build/BuildHelper.cs
+++ b/src/Refitter.Tests/Build/BuildHelper.cs
@@ -1,4 +1,4 @@
-using System.Diagnostics;
+using System.Diagnostics;
using System.Text;
namespace Refitter.Tests.Build;
@@ -56,4 +56,4 @@ public class BuildFailedException(string Errors, string Output)
: Exception($"Build failed{Crlf}Errors:{Crlf}{Errors}{Crlf}Output:{Crlf}{Output}")
{
private static readonly string Crlf = Environment.NewLine;
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/CustomCSharpGeneratorSettingsTests.cs b/src/Refitter.Tests/CustomCSharpGeneratorSettingsTests.cs
index 9d6ca2108..3ccd500cd 100644
--- a/src/Refitter.Tests/CustomCSharpGeneratorSettingsTests.cs
+++ b/src/Refitter.Tests/CustomCSharpGeneratorSettingsTests.cs
@@ -3,6 +3,7 @@
using Refitter.Core;
using Refitter.Tests.Resources;
using Xunit;
+using Refitter.Tests.TestUtilities;
namespace Refitter.Tests;
@@ -19,9 +20,9 @@ public async Task Can_Generate_Default_DateType(
{
var settings = new RefitGeneratorSettings();
settings.CodeGeneratorSettings = new CodeGeneratorSettings();
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotBeNullOrWhiteSpace();
- generateCode.Should().Contain(settings.CodeGeneratorSettings!.DateType);
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
+ generatedCode.Should().Contain(settings.CodeGeneratorSettings!.DateType);
}
[Theory]
@@ -35,9 +36,9 @@ public async Task Can_Generate_Default_DateTimeType(
{
var settings = new RefitGeneratorSettings();
settings.CodeGeneratorSettings = new CodeGeneratorSettings();
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotBeNullOrWhiteSpace();
- generateCode.Should().Contain(settings.CodeGeneratorSettings!.DateTimeType);
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
+ generatedCode.Should().Contain(settings.CodeGeneratorSettings!.DateTimeType);
}
[Theory]
@@ -51,9 +52,9 @@ public async Task Can_Generate_Default_ArrayType(
{
var settings = new RefitGeneratorSettings();
settings.CodeGeneratorSettings = new CodeGeneratorSettings();
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotBeNullOrWhiteSpace();
- generateCode.Should().Contain("ICollection<");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
+ generatedCode.Should().Contain("ICollection<");
}
[Theory]
@@ -68,9 +69,9 @@ public async Task Can_Generate_Custom_DateType(
var settings = new RefitGeneratorSettings();
settings.CodeGeneratorSettings = new CodeGeneratorSettings();
settings.CodeGeneratorSettings!.DateType = "DateTime";
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotBeNullOrWhiteSpace();
- generateCode.Should().Contain("DateTime");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
+ generatedCode.Should().Contain("DateTime");
}
[Theory]
@@ -85,9 +86,9 @@ public async Task Can_Generate_Custom_DateTimeType(
var settings = new RefitGeneratorSettings();
settings.CodeGeneratorSettings = new CodeGeneratorSettings();
settings.CodeGeneratorSettings!.DateTimeType = "DateTime";
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotBeNullOrWhiteSpace();
- generateCode.Should().Contain("DateTime");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
+ generatedCode.Should().Contain("DateTime");
}
[Theory]
@@ -102,9 +103,9 @@ public async Task Can_Generate_Custom_ArrayType(
var settings = new RefitGeneratorSettings();
settings.CodeGeneratorSettings = new CodeGeneratorSettings();
settings.CodeGeneratorSettings!.ArrayType = "System.Collection.Generic.IList";
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotBeNullOrWhiteSpace();
- generateCode.Should().Contain("System.Collection.Generic.IList<");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
+ generatedCode.Should().Contain("System.Collection.Generic.IList<");
}
[Theory]
@@ -122,9 +123,9 @@ public async Task Can_Generate_With_ExcludedTypeNames(
{
"User"
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotBeNullOrWhiteSpace();
- generateCode.Should().NotContain("class User");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
+ generatedCode.Should().NotContain("class User");
}
[Theory]
@@ -137,10 +138,10 @@ public async Task Can_Generate_With_Immutable_Records(SampleOpenSpecifications v
var settings = new RefitGeneratorSettings();
settings.ReturnIApiResponse = true;
settings.CodeGeneratorSettings = new CodeGeneratorSettings { GenerateNativeRecords = true, };
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("record Pet");
- generateCode.Should().Contain("Pet(");
- generateCode.Should().Contain("[JsonConstructor]");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("record Pet");
+ generatedCode.Should().Contain("Pet(");
+ generatedCode.Should().Contain("[JsonConstructor]");
}
private static async Task GenerateCode(
@@ -154,4 +155,4 @@ private static async Task GenerateCode(
var sut = await RefitGenerator.CreateAsync(settings);
return sut.Generate();
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests.cs b/src/Refitter.Tests/DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests.cs
index 4f0dfa61b..cc7bd1d14 100644
--- a/src/Refitter.Tests/DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests.cs
+++ b/src/Refitter.Tests/DependencyInjectionGeneratorWithMicrosoftHttpResilienceTests.cs
@@ -1,4 +1,4 @@
-using FluentAssertions;
+using FluentAssertions;
using Refitter.Core;
using Xunit;
@@ -97,4 +97,4 @@ public void Can_Generate_Without_BaseUrl()
code.Should().Contain("Uri baseUrl");
code.Should().Contain(".ConfigureHttpClient(c => c.BaseAddress = baseUrl)");
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/DependencyInjectionGeneratorWithPollyTests.cs b/src/Refitter.Tests/DependencyInjectionGeneratorWithPollyTests.cs
index 0e54a7662..dadd4608d 100644
--- a/src/Refitter.Tests/DependencyInjectionGeneratorWithPollyTests.cs
+++ b/src/Refitter.Tests/DependencyInjectionGeneratorWithPollyTests.cs
@@ -1,4 +1,4 @@
-using FluentAssertions;
+using FluentAssertions;
using Refitter.Core;
using Xunit;
@@ -101,4 +101,4 @@ public void Can_Generate_Without_BaseUrl()
code.Should().Contain("Uri baseUrl");
code.Should().Contain(".ConfigureHttpClient(c => c.BaseAddress = baseUrl)");
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/AdditionalNamespacesTests.cs b/src/Refitter.Tests/Examples/AdditionalNamespacesTests.cs
index c55c64cfb..95773db1c 100644
--- a/src/Refitter.Tests/Examples/AdditionalNamespacesTests.cs
+++ b/src/Refitter.Tests/Examples/AdditionalNamespacesTests.cs
@@ -1,4 +1,5 @@
-using FluentAssertions;
+using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -62,16 +63,16 @@ public class AdditionalNamespacesTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -79,13 +80,13 @@ public async Task Can_Build_Generated_Code()
[Fact]
public async Task Generated_Types_Contains_Additional_Namespaces()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("using System.Diagnostics.CodeAnalysis;");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("using System.Diagnostics.CodeAnalysis;");
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var foo = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -93,17 +94,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(foo);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/ApizrTests.cs b/src/Refitter.Tests/Examples/ApizrTests.cs
index afff6ea30..c820c42b6 100644
--- a/src/Refitter.Tests/Examples/ApizrTests.cs
+++ b/src/Refitter.Tests/Examples/ApizrTests.cs
@@ -1,6 +1,7 @@
using FluentAssertions;
using Refitter.Core;
using Refitter.Tests.Build;
+using Refitter.Tests.TestUtilities;
using Xunit;
namespace Refitter.Tests.Examples;
@@ -107,15 +108,15 @@ public class ApizrTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
-
+
[Fact]
public async Task Generates_Nullable_Directive()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("#nullable");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("#nullable");
}
[Theory]
@@ -124,78 +125,78 @@ public async Task Generates_Nullable_Directive()
[InlineData("description")]
public async Task Generates_Nullable_Parameters(string parameterName)
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain($"string? {parameterName}");
- generateCode.Should().NotContain($"string? {parameterName} = default");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain($"string? {parameterName}");
+ generatedCode.Should().NotContain($"string? {parameterName} = default");
}
[Fact]
public async Task DoesNot_Generate_CancellationToken()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("CancellationToken cancellationToken");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("CancellationToken cancellationToken");
}
[Fact]
public async Task Generates_RequestOptions_Last()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("[RequestOptions] IApizrRequestOptions options);");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("[RequestOptions] IApizrRequestOptions options);");
}
[Fact]
public async Task Generates_An_Overload_Without_Optional_Parameters()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("string id, [RequestOptions] IApizrRequestOptions options);");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("string id, [RequestOptions] IApizrRequestOptions options);");
}
[Fact]
public async Task Generates_Dynamic_Querystring_Parameters()
{
- string generateCode = await GenerateCode(true);
+ string generatedCode = await GenerateCode(true);
// All nullable query params ending with a nullable query parameter
- generateCode.Should().Contain("string id, [Query] GetFooDetailsQueryParams? queryParams, [RequestOptions] IApizrRequestOptions options);");
- generateCode.Should().Contain("public record GetFooDetailsQueryParams");
+ generatedCode.Should().Contain("string id, [Query] GetFooDetailsQueryParams? queryParams, [RequestOptions] IApizrRequestOptions options);");
+ generatedCode.Should().Contain("public record GetFooDetailsQueryParams");
// Some required query params ending with a non-nullable query parameter with injected params
- generateCode.Should().Contain("string id, [Query] GetBarDetailsQueryParams queryParams, [RequestOptions] IApizrRequestOptions options);");
- generateCode.Should().Contain("public record GetBarDetailsQueryParams");
- generateCode.Should().Contain("public GetBarDetailsQueryParams(string title, string description)");
- generateCode.Should().Contain("Title = title;");
- generateCode.Should().Contain("Description = description;");
+ generatedCode.Should().Contain("string id, [Query] GetBarDetailsQueryParams queryParams, [RequestOptions] IApizrRequestOptions options);");
+ generatedCode.Should().Contain("public record GetBarDetailsQueryParams");
+ generatedCode.Should().Contain("public GetBarDetailsQueryParams(string title, string description)");
+ generatedCode.Should().Contain("Title = title;");
+ generatedCode.Should().Contain("Description = description;");
}
[Fact]
public async Task Generates_Dynamic_Querystring_Parameters_ByTag()
{
- string generateCode = await GenerateCode(true, MultipleInterfaces.ByTag);
- generateCode.Should().Contain("string id, [Query] GetFooDetailsQueryParams? queryParams, [RequestOptions] IApizrRequestOptions options);");
- generateCode.Should().Contain("public record GetFooDetailsQueryParams");
+ string generatedCode = await GenerateCode(true, MultipleInterfaces.ByTag);
+ generatedCode.Should().Contain("string id, [Query] GetFooDetailsQueryParams? queryParams, [RequestOptions] IApizrRequestOptions options);");
+ generatedCode.Should().Contain("public record GetFooDetailsQueryParams");
}
[Fact]
public async Task Generates_Dynamic_Querystring_Parameters_ByEndpoint()
{
- string generateCode = await GenerateCode(true, MultipleInterfaces.ByEndpoint);
- generateCode.Should().Contain("string id, [Query] GetFooDetailsQueryParams? queryParams, [RequestOptions] IApizrRequestOptions options);");
- generateCode.Should().Contain("public record GetFooDetailsQueryParams");
+ string generatedCode = await GenerateCode(true, MultipleInterfaces.ByEndpoint);
+ generatedCode.Should().Contain("string id, [Query] GetFooDetailsQueryParams? queryParams, [RequestOptions] IApizrRequestOptions options);");
+ generatedCode.Should().Contain("public record GetFooDetailsQueryParams");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode(bool useDynamicQuerystringParameters = false, MultipleInterfaces multipleInterfaces = MultipleInterfaces.Unset)
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -211,17 +212,7 @@ private static async Task GenerateCode(bool useDynamicQuerystringParamet
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
- }
-
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
}
diff --git a/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByEndpointTests.cs b/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByEndpointTests.cs
index fae55630f..fe71d97bf 100644
--- a/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByEndpointTests.cs
+++ b/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByEndpointTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -48,49 +49,40 @@ public class ArrayTypeReturnMultipleInterfacesByEndpointTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Returns_IList()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("IList");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("IList");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
- var settings = new RefitGeneratorSettings
- {
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
+ var settings = new RefitGeneratorSettings
+ {
OpenApiPath = swaggerFile,
MultipleInterfaces = MultipleInterfaces.ByEndpoint,
CodeGeneratorSettings = new CodeGeneratorSettings { ArrayType = "System.Collections.Generic.IList" }
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByTagTests.cs b/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByTagTests.cs
index 383f27a23..4d2706313 100644
--- a/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByTagTests.cs
+++ b/src/Refitter.Tests/Examples/ArrayTypeReturnMultipleInterfacesByTagTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -48,49 +49,40 @@ public class ArrayTypeReturnMultipleInterfacesByTagTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Returns_IList()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("IList");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("IList");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
- var settings = new RefitGeneratorSettings
- {
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
+ var settings = new RefitGeneratorSettings
+ {
OpenApiPath = swaggerFile,
MultipleInterfaces = MultipleInterfaces.ByTag,
CodeGeneratorSettings = new CodeGeneratorSettings { ArrayType = "System.Collections.Generic.IList" }
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/ArrayTypeReturnTests.cs b/src/Refitter.Tests/Examples/ArrayTypeReturnTests.cs
index fb6764dff..a3a6b9381 100644
--- a/src/Refitter.Tests/Examples/ArrayTypeReturnTests.cs
+++ b/src/Refitter.Tests/Examples/ArrayTypeReturnTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -48,48 +49,39 @@ public class ArrayTypeReturnTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Returns_IList()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("IList");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("IList");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
- var settings = new RefitGeneratorSettings
- {
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
+ var settings = new RefitGeneratorSettings
+ {
OpenApiPath = swaggerFile,
CodeGeneratorSettings = new CodeGeneratorSettings { ArrayType = "System.Collections.Generic.IList" }
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/CaseSensitiveParametersTests.cs b/src/Refitter.Tests/Examples/CaseSensitiveParametersTests.cs
index 7d62c8e69..8b7dfe061 100644
--- a/src/Refitter.Tests/Examples/CaseSensitiveParametersTests.cs
+++ b/src/Refitter.Tests/Examples/CaseSensitiveParametersTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -43,8 +44,8 @@ public class CaseSensitiveParametersTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Theory]
@@ -53,37 +54,28 @@ public async Task Can_Generate_Code()
[InlineData("Description")]
public async Task Generates_AliasAs_For_Parameters(string parameterName)
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain($"AliasAs(\"{parameterName}\")");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain($"AliasAs(\"{parameterName}\")");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/CollectionFormatTests.cs b/src/Refitter.Tests/Examples/CollectionFormatTests.cs
index 831842bf8..c2a3d7a2e 100644
--- a/src/Refitter.Tests/Examples/CollectionFormatTests.cs
+++ b/src/Refitter.Tests/Examples/CollectionFormatTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using FluentAssertions.Execution;
using Refitter.Core;
using Refitter.Tests.Build;
@@ -63,16 +64,16 @@ public class CollectionFormatTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -85,20 +86,20 @@ public async Task Can_Build_Generated_Code()
[InlineData(CollectionFormat.Pipes, "Query(CollectionFormat.Pipes)")]
public async Task Generated_Code_Contains_Expected_Collection_Format(CollectionFormat format, string expectedAttribute)
{
- string generateCode = await GenerateCode(format);
-
+ string generatedCode = await GenerateCode(format);
+
using (new AssertionScope())
{
- generateCode.Should().Contain(expectedAttribute);
+ generatedCode.Should().Contain(expectedAttribute);
// Check both array parameters use the same format
- generateCode.Should().Contain($"[{expectedAttribute}] IEnumerable ids");
- generateCode.Should().Contain($"[{expectedAttribute}] IEnumerable tags");
+ generatedCode.Should().Contain($"[{expectedAttribute}] IEnumerable ids");
+ generatedCode.Should().Contain($"[{expectedAttribute}] IEnumerable tags");
}
}
private static async Task GenerateCode(CollectionFormat format = CollectionFormat.Multi)
{
- string swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ string swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
try
{
var settings = new RefitGeneratorSettings
@@ -124,13 +125,4 @@ private static async Task GenerateCode(CollectionFormat format = Collect
}
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.json";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/ColonsInPathTests.cs b/src/Refitter.Tests/Examples/ColonsInPathTests.cs
index 4f2f21dd3..c8e835800 100644
--- a/src/Refitter.Tests/Examples/ColonsInPathTests.cs
+++ b/src/Refitter.Tests/Examples/ColonsInPathTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using FluentAssertions.Execution;
using Refitter.Core;
using Refitter.Tests.Build;
@@ -46,45 +47,36 @@ their ids.
[Fact]
public async Task Can_Generate_Code()
{
- var generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Generates_Path_Without_Colons()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
using var scope = new AssertionScope();
- generateCode.Should().NotContain("/:");
+ generatedCode.Should().NotContain("/:");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/CustomCodeGeneratorWithDateTimeTests.cs b/src/Refitter.Tests/Examples/CustomCodeGeneratorWithDateTimeTests.cs
index a60742655..3ed314754 100644
--- a/src/Refitter.Tests/Examples/CustomCodeGeneratorWithDateTimeTests.cs
+++ b/src/Refitter.Tests/Examples/CustomCodeGeneratorWithDateTimeTests.cs
@@ -1,4 +1,5 @@
-using FluentAssertions;
+using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -74,44 +75,44 @@ public class CustomCodeGeneratorWithDateTimeTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task GeneratedCode_Contains_TimeSpan_Parameter()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("[Query] System.TimeSpan");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("[Query] System.TimeSpan");
}
[Fact]
public async Task GeneratedCode_Contains_DateTime_Parameter()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("System.DateTime");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("System.DateTime");
}
[Fact]
public async Task GeneratedCode_NotContains_DateTimeOffset_Parameter()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("System.DateTimeOffset");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("System.DateTimeOffset");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -122,17 +123,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.json";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/CustomDateFormatTests.cs b/src/Refitter.Tests/Examples/CustomDateFormatTests.cs
index 0f23a145b..4d85b77f3 100644
--- a/src/Refitter.Tests/Examples/CustomDateFormatTests.cs
+++ b/src/Refitter.Tests/Examples/CustomDateFormatTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -75,37 +76,37 @@ public class CustomDateFormatTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task GeneratedCode_Contains_Date_Format_String()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain(@"[Query(Format = ""yyyy-MM-ddThh:mm:ssZ"")] ");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain(@"[Query(Format = ""yyyy-MM-ddThh:mm:ssZ"")] ");
}
[Fact]
public async Task GeneratedCode_Contains_TimeSpan_Parameter()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("[Query] System.TimeSpan");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("[Query] System.TimeSpan");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -116,17 +117,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.json";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/DefaultResponseObjectTests.cs b/src/Refitter.Tests/Examples/DefaultResponseObjectTests.cs
index a4f88e024..324d5c1df 100644
--- a/src/Refitter.Tests/Examples/DefaultResponseObjectTests.cs
+++ b/src/Refitter.Tests/Examples/DefaultResponseObjectTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -165,7 +166,7 @@ public async Task Should_Generate_Category_Contract()
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -177,13 +178,4 @@ private static async Task GenerateCode()
return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/DeprecatedEndpointTests.cs b/src/Refitter.Tests/Examples/DeprecatedEndpointTests.cs
index 427dc9c7b..5fe6d3a6d 100644
--- a/src/Refitter.Tests/Examples/DeprecatedEndpointTests.cs
+++ b/src/Refitter.Tests/Examples/DeprecatedEndpointTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -60,44 +61,35 @@ public class DeprecatedEndpointTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Should_Contain_Obsolete_Attribute()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("[System.Obsolete]");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("[System.Obsolete]");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/DeprecatedEndpointsSkippedTests.cs b/src/Refitter.Tests/Examples/DeprecatedEndpointsSkippedTests.cs
index 6acb3a8c0..ca7089839 100644
--- a/src/Refitter.Tests/Examples/DeprecatedEndpointsSkippedTests.cs
+++ b/src/Refitter.Tests/Examples/DeprecatedEndpointsSkippedTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -60,44 +61,44 @@ public class DeprecatedEndpointsSkippedTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Should_NotContain_Obsolete_Attribute()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("[System.Obsolete]");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("[System.Obsolete]");
}
[Fact]
public async Task Should_NotContain_GetAllBars()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("GetAllBars");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("GetAllBars");
}
[Fact]
public async Task Should_NotContain_GetBarDetails()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("GetBarDetails");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("GetBarDetails");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -105,17 +106,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceByTagEndpointsSkippedTests.cs b/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceByTagEndpointsSkippedTests.cs
index 76f82d3be..f474683d8 100644
--- a/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceByTagEndpointsSkippedTests.cs
+++ b/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceByTagEndpointsSkippedTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -60,44 +61,44 @@ public class DeprecatedMultipleInterfaceByTagEndpointsSkippedTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Should_NotContain_Obsolete_Attribute()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("[System.Obsolete]");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("[System.Obsolete]");
}
[Fact]
public async Task Should_NotContain_GetAllBars()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("GetAllBarsEndpoint");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("GetAllBarsEndpoint");
}
[Fact]
public async Task Should_NotContain_GetBarDetails()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("GetBarDetailsEndpoint");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("GetBarDetailsEndpoint");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -106,17 +107,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceEndpointsSkippedTests.cs b/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceEndpointsSkippedTests.cs
index 5ccd36c71..e5d9831f2 100644
--- a/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceEndpointsSkippedTests.cs
+++ b/src/Refitter.Tests/Examples/DeprecatedMultipleInterfaceEndpointsSkippedTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -60,44 +61,44 @@ public class DeprecatedMultipleInterfaceEndpointsSkippedTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Should_NotContain_Obsolete_Attribute()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("[System.Obsolete]");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("[System.Obsolete]");
}
[Fact]
public async Task Should_NotContain_GetAllBars()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("GetAllBarsEndpoint");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("GetAllBarsEndpoint");
}
[Fact]
public async Task Should_NotContain_GetBarDetails()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("GetBarDetailsEndpoint");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("GetBarDetailsEndpoint");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -106,17 +107,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/FilterByPathTests.cs b/src/Refitter.Tests/Examples/FilterByPathTests.cs
index aa963974e..ec7029f66 100644
--- a/src/Refitter.Tests/Examples/FilterByPathTests.cs
+++ b/src/Refitter.Tests/Examples/FilterByPathTests.cs
@@ -1,4 +1,5 @@
-using FluentAssertions;
+using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -58,33 +59,33 @@ public class FilterByPathTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Generates_Methods()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("\"/bar\"");
- generateCode.Should().NotContain("\"/bar/{id}\"");
- generateCode.Should().Contain("\"/foo\"");
- generateCode.Should().Contain("\"/foo/{id}\"");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("\"/bar\"");
+ generatedCode.Should().NotContain("\"/bar/{id}\"");
+ generatedCode.Should().Contain("\"/foo\"");
+ generatedCode.Should().Contain("\"/foo/{id}\"");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -92,17 +93,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/FilterByTagsTests.cs b/src/Refitter.Tests/Examples/FilterByTagsTests.cs
index 13ea12678..bff6e88f9 100644
--- a/src/Refitter.Tests/Examples/FilterByTagsTests.cs
+++ b/src/Refitter.Tests/Examples/FilterByTagsTests.cs
@@ -1,4 +1,5 @@
-using FluentAssertions;
+using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -67,33 +68,33 @@ public class FilterByTagsTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Generates_BarAndBaz_Methods()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("\"/bar\"");
- generateCode.Should().Contain("\"/bar/{id}\"");
- generateCode.Should().Contain("\"/baz\"");
- generateCode.Should().NotContain("/foo");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("\"/bar\"");
+ generatedCode.Should().Contain("\"/bar/{id}\"");
+ generatedCode.Should().Contain("\"/baz\"");
+ generatedCode.Should().NotContain("/foo");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -101,17 +102,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/IncludeInheritanceHierarchyTests.cs b/src/Refitter.Tests/Examples/IncludeInheritanceHierarchyTests.cs
index 60fa51adb..88af9bdf7 100644
--- a/src/Refitter.Tests/Examples/IncludeInheritanceHierarchyTests.cs
+++ b/src/Refitter.Tests/Examples/IncludeInheritanceHierarchyTests.cs
@@ -1,4 +1,5 @@
-using FluentAssertions;
+using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -57,71 +58,61 @@ public class IncludeInheritanceHierarchyTests
additionalProperties: false
";
- [Theory]
- [InlineData(true)]
- [InlineData(false)]
- public async Task Can_Generate_Code(bool includeHierarchy)
- {
- string generateCode = await GenerateCode(includeHierarchy);
- generateCode.Should().NotBeNullOrWhiteSpace();
- }
-
- [Fact]
- public async Task Removes_Unreferenced_Schema()
- {
- string generateCode = await GenerateCode(includeHierarchy: false);
- generateCode.Should().NotContain("Anonymous");
+ [Theory]
+ [InlineData(true)]
+ [InlineData(false)]
+ public async Task Can_Generate_Code(bool includeHierarchy)
+ {
+ string generatedCode = await GenerateCode(includeHierarchy);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
+ }
- generateCode.Should().NotContain("class B");
- generateCode.Should().Contain("class A");
- }
+ [Fact]
+ public async Task Removes_Unreferenced_Schema()
+ {
+ string generatedCode = await GenerateCode(includeHierarchy: false);
+ generatedCode.Should().NotContain("Anonymous");
- [Fact]
- public async Task Keeps_All_Union_Cases_Schema()
- {
- string generateCode = await GenerateCode(includeHierarchy: true);
- generateCode.Should().NotContain("Anonymous");
+ generatedCode.Should().NotContain("class B");
+ generatedCode.Should().Contain("class A");
+ }
- generateCode.Should().Contain("class B");
- generateCode.Should().Contain("class A");
- }
+ [Fact]
+ public async Task Keeps_All_Union_Cases_Schema()
+ {
+ string generatedCode = await GenerateCode(includeHierarchy: true);
+ generatedCode.Should().NotContain("Anonymous");
- [Theory]
- [InlineData(true)]
- [InlineData(false)]
- public async Task Can_Build_Generated_Code(bool includeHierarchy)
- {
- string generateCode = await GenerateCode(includeHierarchy);
- BuildHelper
- .BuildCSharp(generateCode)
- .Should()
- .BeTrue();
- }
+ generatedCode.Should().Contain("class B");
+ generatedCode.Should().Contain("class A");
+ }
- private static async Task GenerateCode(bool includeHierarchy)
- {
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
- var settings = new RefitGeneratorSettings
+ [Theory]
+ [InlineData(true)]
+ [InlineData(false)]
+ public async Task Can_Build_Generated_Code(bool includeHierarchy)
{
- OpenApiPath = swaggerFile,
- TrimUnusedSchema = true,
- IncludeInheritanceHierarchy = includeHierarchy,
- UsePolymorphicSerialization = true, // use System.Text.Json attributes
- };
+ string generatedCode = await GenerateCode(includeHierarchy);
+ BuildHelper
+ .BuildCSharp(generatedCode)
+ .Should()
+ .BeTrue();
+ }
- var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
- }
+ private static async Task GenerateCode(bool includeHierarchy)
+ {
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
+ var settings = new RefitGeneratorSettings
+ {
+ OpenApiPath = swaggerFile,
+ TrimUnusedSchema = true,
+ IncludeInheritanceHierarchy = includeHierarchy,
+ UsePolymorphicSerialization = true, // use System.Text.Json attributes
+ };
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
+ var sut = await RefitGenerator.CreateAsync(settings);
+ var generatedCode = sut.Generate();
+ return generatedCode;
+ }
}
}
-}
diff --git a/src/Refitter.Tests/Examples/KebabCaseTests.cs b/src/Refitter.Tests/Examples/KebabCaseTests.cs
index 3657ee419..218245655 100644
--- a/src/Refitter.Tests/Examples/KebabCaseTests.cs
+++ b/src/Refitter.Tests/Examples/KebabCaseTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -53,44 +54,35 @@ public class KebabCaseTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Replaces_KababCase_Parameters_With_PascalCase()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("string job_id");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("string job_id");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/KeepSchemaPatternsTests.cs b/src/Refitter.Tests/Examples/KeepSchemaPatternsTests.cs
index 4c058f2d5..51e89c551 100644
--- a/src/Refitter.Tests/Examples/KeepSchemaPatternsTests.cs
+++ b/src/Refitter.Tests/Examples/KeepSchemaPatternsTests.cs
@@ -1,6 +1,7 @@
-using FluentAssertions;
+using FluentAssertions;
using Refitter.Core;
using Refitter.Tests.Build;
+using Refitter.Tests.TestUtilities;
using Xunit;
namespace Refitter.Tests.Examples;
@@ -116,49 +117,39 @@ public class KeepSchemaPatternsTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Keeps_Unreferenced_Schema()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
- generateCode.Should().NotContain("class UserComponent2");
- generateCode.Should().Contain("class UserComponent");
- generateCode.Should().Contain("class SomeComponent");
- generateCode.Should().Contain("class Component");
- generateCode.Should().Contain("class Metadata");
+ generatedCode.Should().NotContain("class UserComponent2");
+ generatedCode.Should().Contain("class UserComponent");
+ generatedCode.Should().Contain("class SomeComponent");
+ generatedCode.Should().Contain("class Component");
+ generatedCode.Should().Contain("class Metadata");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
- var settings = new RefitGeneratorSettings {OpenApiPath = swaggerFile, TrimUnusedSchema = true, KeepSchemaPatterns = new[] {"^UserComponent$"},};
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
+ var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile, TrimUnusedSchema = true, KeepSchemaPatterns = new[] { "^UserComponent$" }, };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
-
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/MultiPartFormDataTests.cs b/src/Refitter.Tests/Examples/MultiPartFormDataTests.cs
index c34439866..f2bd20363 100644
--- a/src/Refitter.Tests/Examples/MultiPartFormDataTests.cs
+++ b/src/Refitter.Tests/Examples/MultiPartFormDataTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
@@ -99,16 +100,16 @@ public class MultiPartFormDataTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -116,35 +117,26 @@ public async Task Can_Build_Generated_Code()
[Fact]
public async Task Generated_Code_Contains_MultiPart_Attribute()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("[Multipart]");
- generateCode.Should().NotContain("Content-Type: multipart/form-data");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("[Multipart]");
+ generatedCode.Should().NotContain("Content-Type: multipart/form-data");
}
[Fact]
public async Task Generated_Code_Contains_Correct_Parameters()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("string name, StreamPart animalClassFile, StreamPart animalCrowdFile");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("string name, StreamPart animalClassFile, StreamPart animalCrowdFile");
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.json";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointTests.cs b/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointTests.cs
index bc79f5a24..9a66d72db 100644
--- a/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointTests.cs
+++ b/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -106,60 +107,60 @@ public class MultipleInterfacesByEndpointTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Generates_IGetAllFooEndpoint()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("partial interface IGetAllFoosEndpoint");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("partial interface IGetAllFoosEndpoint");
}
[Fact]
public async Task Generates_IGetFooDetailsEndpoint()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("partial interface IGetFooDetailsEndpoint");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("partial interface IGetFooDetailsEndpoint");
}
[Fact]
public async Task Generates_IGetAllBarEndpoint()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("partial interface IGetAllBarsEndpoint");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("partial interface IGetAllBarsEndpoint");
}
[Fact]
public async Task Generates_IGetBarDetailsEndpoint()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("partial interface IGetBarDetailsEndpoint");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("partial interface IGetBarDetailsEndpoint");
}
[Fact]
public async Task Generates_Dynamic_Querystring_Parameters()
{
- string generateCode = await GenerateCode(true);
- generateCode.Should().Contain("GetFooDetailsQueryParams");
- generateCode.Should().NotContain("GetAllFoosQueryParams");
- generateCode.Should().Contain("GetBarDetailsQueryParams");
+ string generatedCode = await GenerateCode(true);
+ generatedCode.Should().Contain("GetFooDetailsQueryParams");
+ generatedCode.Should().NotContain("GetAllFoosQueryParams");
+ generatedCode.Should().Contain("GetBarDetailsQueryParams");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode(bool useDynamicQuerystringParameters = false)
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -169,17 +170,8 @@ private static async Task GenerateCode(bool useDynamicQuerystringParamet
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithIoCTests.cs b/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithIoCTests.cs
index ef313337c..0119d160e 100644
--- a/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithIoCTests.cs
+++ b/src/Refitter.Tests/Examples/MultipleInterfacesByEndpointWithIoCTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -40,44 +41,44 @@ public class MultipleInterfacesByEndpointWithIoCTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Generates_IDeleteFooEndpoint()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("partial interface IDeleteFooEndpoint");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("partial interface IDeleteFooEndpoint");
}
[Fact]
public async Task Generates_IDeleteBarEndpoint()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("partial interface IDeleteBarEndpoint");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("partial interface IDeleteBarEndpoint");
}
[Fact]
public async Task Generates_IServiceCollectionExtensions()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("static partial class IServiceCollectionExtensions");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("static partial class IServiceCollectionExtensions");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -91,17 +92,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/MultipleInterfacesByTagsTests.cs b/src/Refitter.Tests/Examples/MultipleInterfacesByTagsTests.cs
index e6ce8694f..b95057104 100644
--- a/src/Refitter.Tests/Examples/MultipleInterfacesByTagsTests.cs
+++ b/src/Refitter.Tests/Examples/MultipleInterfacesByTagsTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -117,46 +118,46 @@ public class MultipleInterfacesByTagsTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Generates_Foo_Interface()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("partial interface IFooApi");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("partial interface IFooApi");
}
[Fact]
public async Task Generates_Bar_Interface()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("partial interface IBarApi");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("partial interface IBarApi");
}
[Fact]
public async Task Generates_Dynamic_Querystring_Parameters()
{
- string generateCode = await GenerateCode(true);
- generateCode.Should().Contain("GetFooDetailsQueryParams");
- generateCode.Should().Contain("GetAllFoosQueryParams");
- generateCode.Should().Contain("GetBarDetailsQueryParams");
+ string generatedCode = await GenerateCode(true);
+ generatedCode.Should().Contain("GetFooDetailsQueryParams");
+ generatedCode.Should().Contain("GetAllFoosQueryParams");
+ generatedCode.Should().Contain("GetBarDetailsQueryParams");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode(bool useDynamicQuerystringParameters = false)
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -166,17 +167,8 @@ private static async Task GenerateCode(bool useDynamicQuerystringParamet
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/MultipleSuccessResponsesTests.cs b/src/Refitter.Tests/Examples/MultipleSuccessResponsesTests.cs
index 4f5cc4c13..700c0df91 100644
--- a/src/Refitter.Tests/Examples/MultipleSuccessResponsesTests.cs
+++ b/src/Refitter.Tests/Examples/MultipleSuccessResponsesTests.cs
@@ -1,6 +1,7 @@
using FluentAssertions;
using Refitter.Core;
using Refitter.Tests.Build;
+using Refitter.Tests.TestUtilities;
using Xunit;
namespace Refitter.Tests.Examples;
@@ -59,44 +60,34 @@ public class MultipleSuccessResponsesTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Has_No_Duplicate_Accept_Headers()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotContain("[Headers(\"Accept: application/json, application/json\")]");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotContain("[Headers(\"Accept: application/json, application/json\")]");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
- }
-
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
}
diff --git a/src/Refitter.Tests/Examples/NoContentApiResponseTests.cs b/src/Refitter.Tests/Examples/NoContentApiResponseTests.cs
index b2a89baf1..f74cc14ca 100644
--- a/src/Refitter.Tests/Examples/NoContentApiResponseTests.cs
+++ b/src/Refitter.Tests/Examples/NoContentApiResponseTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using FluentAssertions.Execution;
using Refitter.Core;
using Refitter.Tests.Build;
@@ -56,46 +57,37 @@ their ids.
[Fact]
public async Task Can_Generate_Code()
{
- var generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Generates_IApiResponse_For_NoContent()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
using var scope = new AssertionScope();
- generateCode.Should().Contain("Task");
+ generatedCode.Should().Contain("Task");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
settings.ReturnIApiResponse = true;
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/OctetStreamBodyTests.cs b/src/Refitter.Tests/Examples/OctetStreamBodyTests.cs
index efe7a7899..624719a9c 100644
--- a/src/Refitter.Tests/Examples/OctetStreamBodyTests.cs
+++ b/src/Refitter.Tests/Examples/OctetStreamBodyTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -45,37 +46,37 @@ public class OctetStreamBodyTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
-
+
[Fact]
public async Task Generates_Pet_Interface()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("partial interface IPetApi");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("partial interface IPetApi");
}
-
+
[Fact]
public async Task Generates_StreamPart_Parameter()
{
- string generateCode = await GenerateCode(true);
- generateCode.Should().Contain("long petId, [Query] string additionalMetadata, StreamPart body");
+ string generatedCode = await GenerateCode(true);
+ generatedCode.Should().Contain("long petId, [Query] string additionalMetadata, StreamPart body");
}
-
+
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode(bool useDynamicQuerystringParameters = false)
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -85,17 +86,8 @@ private static async Task GenerateCode(bool useDynamicQuerystringParamet
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/OpenApiUrlTests.cs b/src/Refitter.Tests/Examples/OpenApiUrlTests.cs
index 02a63ed00..6e030987c 100644
--- a/src/Refitter.Tests/Examples/OpenApiUrlTests.cs
+++ b/src/Refitter.Tests/Examples/OpenApiUrlTests.cs
@@ -1,4 +1,5 @@
-#if !DEBUG
+#if !DEBUG
+using Refitter.Tests.TestUtilities;
using FluentAssertions;
using Refitter.Core;
using Refitter.Tests.Build;
@@ -21,9 +22,9 @@ public async Task Can_Build_Generated_Code_From_OpenApi_v3_Url_Json(string url)
{
var settings = new RefitGeneratorSettings { OpenApiPath = url };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
+ var generatedCode = sut.Generate();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue(url);
}
@@ -38,11 +39,11 @@ public async Task Can_Build_Generated_Code_From_OpenApi_v3_Url_Yaml(string url)
{
var settings = new RefitGeneratorSettings { OpenApiPath = url };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
+ var generatedCode = sut.Generate();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue(url);
}
+#endif
}
-#endif
\ No newline at end of file
diff --git a/src/Refitter.Tests/Examples/OperationIdWithInvalidFirstCharTests.cs b/src/Refitter.Tests/Examples/OperationIdWithInvalidFirstCharTests.cs
index 406eeda07..09e3e189c 100644
--- a/src/Refitter.Tests/Examples/OperationIdWithInvalidFirstCharTests.cs
+++ b/src/Refitter.Tests/Examples/OperationIdWithInvalidFirstCharTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -32,47 +33,38 @@ public class OperationIdWithInvalidFirstCharTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Adds_Underscore_At_Beginning_With_Ivalid_Methode_Name()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("_2fa");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("_2fa");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/OperationIdWithSpacesTests.cs b/src/Refitter.Tests/Examples/OperationIdWithSpacesTests.cs
index 3b75e2201..dc14a75f6 100644
--- a/src/Refitter.Tests/Examples/OperationIdWithSpacesTests.cs
+++ b/src/Refitter.Tests/Examples/OperationIdWithSpacesTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -31,44 +32,35 @@ public class OperationIdWithSpacesTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Replaces_KababCase_Parameters_With_PascalCase()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("string job_id");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("string job_id");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/OptionalNullableParametersTests.cs b/src/Refitter.Tests/Examples/OptionalNullableParametersTests.cs
index 54f962589..d17543fe4 100644
--- a/src/Refitter.Tests/Examples/OptionalNullableParametersTests.cs
+++ b/src/Refitter.Tests/Examples/OptionalNullableParametersTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -48,15 +49,15 @@ public class OptionalNullableParametersTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
-
+
[Fact]
public async Task Generates_Nullable_Directive()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("#nullable");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("#nullable");
}
[Theory]
@@ -65,37 +66,37 @@ public async Task Generates_Nullable_Directive()
[InlineData("description")]
public async Task Generates_Nullable_Parameters(string parameterName)
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain($"string? {parameterName} = default");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain($"string? {parameterName} = default");
}
[Fact]
public async Task Generates_CancellationToken_Last()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("CancellationToken cancellationToken = default);");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("CancellationToken cancellationToken = default);");
}
[Fact]
public async Task Generates_DynamicQuerystring_Param()
{
- string generateCode = await GenerateCode(true);
- generateCode.Should().Contain("string id, [Query] UpdateJobDetailsQueryParams? queryParams = default, CancellationToken cancellationToken = default);");
+ string generatedCode = await GenerateCode(true);
+ generatedCode.Should().Contain("string id, [Query] UpdateJobDetailsQueryParams? queryParams = default, CancellationToken cancellationToken = default);");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode(bool useDynamicQuerystringParameters = false)
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -105,17 +106,8 @@ private static async Task GenerateCode(bool useDynamicQuerystringParamet
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/PathParametersTests.cs b/src/Refitter.Tests/Examples/PathParametersTests.cs
index 63bd17ae6..70435f186 100644
--- a/src/Refitter.Tests/Examples/PathParametersTests.cs
+++ b/src/Refitter.Tests/Examples/PathParametersTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using FluentAssertions.Execution;
using Refitter.Core;
using Refitter.Tests.Build;
@@ -56,46 +57,37 @@ their ids.
[Fact]
public async Task Can_Generate_Code()
{
- var generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Generates_Path_Parameters()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
using var scope = new AssertionScope();
- generateCode.Should().Contain("Guid orderId");
- generateCode.Should().Contain("Guid orderItemId");
+ generatedCode.Should().Contain("Guid orderId");
+ generatedCode.Should().Contain("Guid orderItemId");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/PercentageCharacterTests.cs b/src/Refitter.Tests/Examples/PercentageCharacterTests.cs
index 14dd278cf..aa1172e7b 100644
--- a/src/Refitter.Tests/Examples/PercentageCharacterTests.cs
+++ b/src/Refitter.Tests/Examples/PercentageCharacterTests.cs
@@ -1,6 +1,7 @@
using FluentAssertions;
using Refitter.Core;
using Refitter.Tests.Build;
+using Refitter.Tests.TestUtilities;
using Xunit;
namespace Refitter.Tests.Examples;
@@ -48,44 +49,34 @@ public class PercentageCharacterTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Replaces_Percentage_With_PascalCase()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("string PercentOfSomething");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("string PercentOfSomething");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
- }
-
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
}
diff --git a/src/Refitter.Tests/Examples/PoorOperationIdsTests.cs b/src/Refitter.Tests/Examples/PoorOperationIdsTests.cs
index a0491f083..d92e955e5 100644
--- a/src/Refitter.Tests/Examples/PoorOperationIdsTests.cs
+++ b/src/Refitter.Tests/Examples/PoorOperationIdsTests.cs
@@ -1,4 +1,5 @@
-using FluentAssertions;
+using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -62,37 +63,28 @@ public class PoorOperationIdsTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var foo = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(foo);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/RequestResponseHeadersTests.cs b/src/Refitter.Tests/Examples/RequestResponseHeadersTests.cs
index d5d1c10ef..9cc823aeb 100644
--- a/src/Refitter.Tests/Examples/RequestResponseHeadersTests.cs
+++ b/src/Refitter.Tests/Examples/RequestResponseHeadersTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using FluentAssertions.Execution;
using Refitter.Core;
using Refitter.Tests.Build;
@@ -30,53 +31,44 @@ public class RequestResponseHeadersTests
[Fact]
public async Task Can_Generate_Code()
{
- var generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Generates_ContentType_Header_Attribute()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
using var scope = new AssertionScope();
- generateCode.Should().Contain("Content-Type: application/json");
+ generatedCode.Should().Contain("Content-Type: application/json");
}
[Fact]
public async Task Generates_Accept_Header_Attribute()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
using var scope = new AssertionScope();
- generateCode.Should().Contain("Accept: application/json");
+ generatedCode.Should().Contain("Accept: application/json");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile, AddAcceptHeaders = true };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/ResponseHeadersTests.cs b/src/Refitter.Tests/Examples/ResponseHeadersTests.cs
index 0d8bd347b..4ea1ac71a 100644
--- a/src/Refitter.Tests/Examples/ResponseHeadersTests.cs
+++ b/src/Refitter.Tests/Examples/ResponseHeadersTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using FluentAssertions.Execution;
using Refitter.Core;
using Refitter.Tests.Build;
@@ -24,53 +25,44 @@ public class ResponseHeadersTests
[Fact]
public async Task Can_Generate_Code()
{
- var generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Should_Not_Generate_ContentType_Header_Attribute()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
using var scope = new AssertionScope();
- generateCode.Should().NotContain("Content-Type: \")]");
+ generatedCode.Should().NotContain("Content-Type: \")]");
}
[Fact]
public async Task Generates_Accept_Header_Attribute()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
using var scope = new AssertionScope();
- generateCode.Should().Contain("Accept: application/json");
+ generatedCode.Should().Contain("Accept: application/json");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile, AddAcceptHeaders = true };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/SymbolsInDescriptionTests.cs b/src/Refitter.Tests/Examples/SymbolsInDescriptionTests.cs
index 220ffa85c..e971e63b2 100644
--- a/src/Refitter.Tests/Examples/SymbolsInDescriptionTests.cs
+++ b/src/Refitter.Tests/Examples/SymbolsInDescriptionTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using FluentAssertions.Execution;
using Refitter.Core;
using Refitter.Tests.Build;
@@ -36,44 +37,35 @@ Something something >> <<
[Fact]
public async Task Can_Generate_Code()
{
- var generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Symbols_In_Description_Are_Escaped()
{
- var generateCode = await GenerateCode();
- generateCode.Should().Contain("<test> >> << </test>");
+ var generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("<test> >> << </test>");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- var generateCode = await GenerateCode();
+ var generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/SystemPropertyInContractTests.cs b/src/Refitter.Tests/Examples/SystemPropertyInContractTests.cs
index cbe33019a..ed35eed0d 100644
--- a/src/Refitter.Tests/Examples/SystemPropertyInContractTests.cs
+++ b/src/Refitter.Tests/Examples/SystemPropertyInContractTests.cs
@@ -1,4 +1,5 @@
-using FluentAssertions;
+using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -40,37 +41,28 @@ public class SystemPropertyInContractTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/TrimUnusedSchemaTests.cs b/src/Refitter.Tests/Examples/TrimUnusedSchemaTests.cs
index 592575f72..06c365cb9 100644
--- a/src/Refitter.Tests/Examples/TrimUnusedSchemaTests.cs
+++ b/src/Refitter.Tests/Examples/TrimUnusedSchemaTests.cs
@@ -1,4 +1,5 @@
-using FluentAssertions;
+using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -189,43 +190,43 @@ public class TrimUnusedSchemaTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Removes_Unreferenced_Schema()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("class Warehouse");
- generateCode.Should().Contain("class WarehouseResponse");
- generateCode.Should().Contain("class SomeComponent");
- generateCode.Should().Contain("class Component");
- generateCode.Should().Contain("class ProblemDetails");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("class Warehouse");
+ generatedCode.Should().Contain("class WarehouseResponse");
+ generatedCode.Should().Contain("class SomeComponent");
+ generatedCode.Should().Contain("class Component");
+ generatedCode.Should().Contain("class ProblemDetails");
// Schema is manipulated to return ARRAY of WarehouseResponse
// previously (<= 0.9.9.0) this wasn't accomodated.
//
// For whatever reason NSwag OpenApi-Schema doesn't contain Schema for "Items"
// Instead it's inside "Item"
- generateCode.Should().Contain("Task> CreateWarehouse([Query] string token, [Body] Warehouse ");
+ generatedCode.Should().Contain("Task> CreateWarehouse([Query] string token, [Body] Warehouse ");
- generateCode.Should().NotContain("class UserComponent");
+ generatedCode.Should().NotContain("class UserComponent");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -233,17 +234,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Examples/UnderscoresToPascalCaseTests.cs b/src/Refitter.Tests/Examples/UnderscoresToPascalCaseTests.cs
index 8b494e97f..6010e01b1 100644
--- a/src/Refitter.Tests/Examples/UnderscoresToPascalCaseTests.cs
+++ b/src/Refitter.Tests/Examples/UnderscoresToPascalCaseTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -53,44 +54,35 @@ public class HandleUnderscoresTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Replaces_Underscore_Properties_With_PascalCase()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("DateTimeOffset StartDate");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("DateTimeOffset StartDate");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings { OpenApiPath = swaggerFile };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/UseIsoDateFormatTests.cs b/src/Refitter.Tests/Examples/UseIsoDateFormatTests.cs
index b9aa984fd..23ced3ab5 100644
--- a/src/Refitter.Tests/Examples/UseIsoDateFormatTests.cs
+++ b/src/Refitter.Tests/Examples/UseIsoDateFormatTests.cs
@@ -1,4 +1,5 @@
using AutoFixture.Xunit2;
+using Refitter.Tests.TestUtilities;
using FluentAssertions;
using Refitter.Core;
using Refitter.Tests.Build;
@@ -49,54 +50,54 @@ public class UseIsoDateFormatTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task GeneratedCode_Contains_Date_Format_String()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset valid_from");
- generateCode.Should().Contain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset valid_to");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset valid_from");
+ generatedCode.Should().Contain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset valid_to");
}
[Fact]
public async Task GeneratedCode_NotContains_DateTime_Format_String()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain(@"[Query] System.DateTimeOffset test_datetime");
- generateCode.Should().NotContain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset time_datetime");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain(@"[Query] System.DateTimeOffset test_datetime");
+ generatedCode.Should().NotContain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset time_datetime");
}
[Fact]
public async Task GeneratedCode_Contains_TimeSpan_Parameter()
{
- string generateCode = await GenerateCode();
- generateCode.Should().Contain("[Query] System.TimeSpan");
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().Contain("[Query] System.TimeSpan");
}
[Fact]
public async Task GeneratedCode_Contains_Date_Format_String_With_Empty_Settings()
{
- string generateCode = await GenerateCode(new CodeGeneratorSettings());
- generateCode.Should().Contain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset valid_from");
- generateCode.Should().Contain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset valid_to");
+ string generatedCode = await GenerateCode(new CodeGeneratorSettings());
+ generatedCode.Should().Contain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset valid_from");
+ generatedCode.Should().Contain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset valid_to");
}
[Fact]
public async Task GeneratedCode_NotContains_DateTime_Format_String_With_Empty_Settings()
{
- string generateCode = await GenerateCode(new CodeGeneratorSettings());
- generateCode.Should().Contain(@"[Query] System.DateTimeOffset test_datetime");
- generateCode.Should().NotContain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset time_datetime");
+ string generatedCode = await GenerateCode(new CodeGeneratorSettings());
+ generatedCode.Should().Contain(@"[Query] System.DateTimeOffset test_datetime");
+ generatedCode.Should().NotContain(@"[Query(Format = ""yyyy-MM-dd"")] System.DateTimeOffset time_datetime");
}
[Fact]
public async Task GeneratedCode_Contains_TimeSpan_Parameter_With_Empty_Settings()
{
- string generateCode = await GenerateCode(new CodeGeneratorSettings());
- generateCode.Should().Contain("[Query] System.TimeSpan");
+ string generatedCode = await GenerateCode(new CodeGeneratorSettings());
+ generatedCode.Should().Contain("[Query] System.TimeSpan");
}
[Theory, AutoData]
@@ -104,44 +105,44 @@ public async Task GeneratedCode_Contains_Date_Format_String_With_Settings(
string dateFormat,
string dateTimeFormat)
{
- var generateCode = await GenerateCode(
+ var generatedCode = await GenerateCode(
new CodeGeneratorSettings
{
DateFormat = dateFormat,
DateTimeFormat = dateTimeFormat
});
- generateCode.Should().Contain(@$"[Query(Format = ""{dateFormat}"")] System.DateTimeOffset valid_from");
- generateCode.Should().Contain(@$"[Query(Format = ""{dateFormat}"")] System.DateTimeOffset valid_to");
- generateCode.Should().Contain(@$"[Query(Format = ""{dateTimeFormat}"")] System.DateTimeOffset test_datetime");
- generateCode.Should().Contain(@$"[Query] System.TimeSpan test_time");
+ generatedCode.Should().Contain(@$"[Query(Format = ""{dateFormat}"")] System.DateTimeOffset valid_from");
+ generatedCode.Should().Contain(@$"[Query(Format = ""{dateFormat}"")] System.DateTimeOffset valid_to");
+ generatedCode.Should().Contain(@$"[Query(Format = ""{dateTimeFormat}"")] System.DateTimeOffset test_datetime");
+ generatedCode.Should().Contain(@$"[Query] System.TimeSpan test_time");
}
[Theory, AutoData]
public async Task GeneratedCode_NotContains_DateTime_Format_String_With_Settings(string format)
{
- string generateCode = await GenerateCode(new CodeGeneratorSettings { DateFormat = format });
- generateCode.Should().Contain(@"[Query] System.DateTimeOffset test_datetime");
- generateCode.Should().NotContain(@$"[Query(Format = ""{format}"")] System.DateTimeOffset time_datetime");
+ string generatedCode = await GenerateCode(new CodeGeneratorSettings { DateFormat = format });
+ generatedCode.Should().Contain(@"[Query] System.DateTimeOffset test_datetime");
+ generatedCode.Should().NotContain(@$"[Query(Format = ""{format}"")] System.DateTimeOffset time_datetime");
}
[Theory, AutoData]
public async Task GeneratedCode_Contains_TimeSpan_Parameter_With_Settings(string format)
{
- string generateCode = await GenerateCode(new CodeGeneratorSettings { DateFormat = format });
- generateCode.Should().Contain("[Query] System.TimeSpan");
+ string generatedCode = await GenerateCode(new CodeGeneratorSettings { DateFormat = format });
+ generatedCode.Should().Contain("[Query] System.TimeSpan");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
- BuildHelper.BuildCSharp(generateCode).Should().BeTrue();
+ string generatedCode = await GenerateCode();
+ BuildHelper.BuildCSharp(generatedCode).Should().BeTrue();
}
private static async Task GenerateCode(CodeGeneratorSettings? generatorSettings = null)
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -150,17 +151,8 @@ private static async Task GenerateCode(CodeGeneratorSettings? generatorS
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yaml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/Examples/UsePolymorphicSerializationTests.cs b/src/Refitter.Tests/Examples/UsePolymorphicSerializationTests.cs
index 8df8d6ce2..47909fed9 100644
--- a/src/Refitter.Tests/Examples/UsePolymorphicSerializationTests.cs
+++ b/src/Refitter.Tests/Examples/UsePolymorphicSerializationTests.cs
@@ -1,4 +1,5 @@
using FluentAssertions;
+using Refitter.Tests.TestUtilities;
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
@@ -189,39 +190,39 @@ public class UsePolymorphicSerializationTests
[Fact]
public async Task Can_Generate_Code()
{
- string generateCode = await GenerateCode();
- generateCode.Should().NotBeNullOrWhiteSpace();
+ string generatedCode = await GenerateCode();
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Fact]
public async Task Use_Polymorphic_Serialization()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
- generateCode.Should().NotContain("JsonInheritanceConverter");
- generateCode.Should().NotContain("JsonInheritanceAttribute");
+ generatedCode.Should().NotContain("JsonInheritanceConverter");
+ generatedCode.Should().NotContain("JsonInheritanceAttribute");
- generateCode.Should().Contain("[JsonPolymorphic(TypeDiscriminatorPropertyName = \"$type\", UnknownDerivedTypeHandling = JsonUnknownDerivedTypeHandling.FallBackToBaseType, IgnoreUnrecognizedTypeDiscriminators = true)]");
- generateCode.Should().Contain("[JsonDerivedType(typeof(Warehouse), typeDiscriminator: \"Warehouse\")]");
- generateCode.Should().Contain("[JsonDerivedType(typeof(WarehouseResponse), typeDiscriminator: \"WarehouseResponse\")]");
- generateCode.Should().Contain("[JsonDerivedType(typeof(LoadingAddress), typeDiscriminator: \"LoadingAddress\")]");
- generateCode.Should().Contain("[JsonDerivedType(typeof(UserComponent), typeDiscriminator: \"UserComponent\")]");
- generateCode.Should().Contain("[JsonDerivedType(typeof(UserComponent2), typeDiscriminator: \"UserComponent2\")]");
+ generatedCode.Should().Contain("[JsonPolymorphic(TypeDiscriminatorPropertyName = \"$type\", UnknownDerivedTypeHandling = JsonUnknownDerivedTypeHandling.FallBackToBaseType, IgnoreUnrecognizedTypeDiscriminators = true)]");
+ generatedCode.Should().Contain("[JsonDerivedType(typeof(Warehouse), typeDiscriminator: \"Warehouse\")]");
+ generatedCode.Should().Contain("[JsonDerivedType(typeof(WarehouseResponse), typeDiscriminator: \"WarehouseResponse\")]");
+ generatedCode.Should().Contain("[JsonDerivedType(typeof(LoadingAddress), typeDiscriminator: \"LoadingAddress\")]");
+ generatedCode.Should().Contain("[JsonDerivedType(typeof(UserComponent), typeDiscriminator: \"UserComponent\")]");
+ generatedCode.Should().Contain("[JsonDerivedType(typeof(UserComponent2), typeDiscriminator: \"UserComponent2\")]");
}
[Fact]
public async Task Can_Build_Generated_Code()
{
- string generateCode = await GenerateCode();
+ string generatedCode = await GenerateCode();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
private static async Task GenerateCode()
{
- var swaggerFile = await CreateSwaggerFile(OpenApiSpec);
+ var swaggerFile = await SwaggerFileHelper.CreateSwaggerFile(OpenApiSpec);
var settings = new RefitGeneratorSettings
{
OpenApiPath = swaggerFile,
@@ -229,17 +230,8 @@ private static async Task GenerateCode()
};
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
- private static async Task CreateSwaggerFile(string contents)
- {
- var filename = $"{Guid.NewGuid()}.yml";
- var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
- Directory.CreateDirectory(folder);
- var swaggerFile = Path.Combine(folder, filename);
- await File.WriteAllTextAsync(swaggerFile, contents);
- return swaggerFile;
- }
}
diff --git a/src/Refitter.Tests/IllegalSymbolsTests.cs b/src/Refitter.Tests/IllegalSymbolsTests.cs
index f8d1f74e9..98650739d 100644
--- a/src/Refitter.Tests/IllegalSymbolsTests.cs
+++ b/src/Refitter.Tests/IllegalSymbolsTests.cs
@@ -1,8 +1,9 @@
-using FluentAssertions;
+using FluentAssertions;
using Refitter.Core;
using Refitter.Tests.Build;
using Refitter.Tests.Resources;
using Xunit;
+using Refitter.Tests.TestUtilities;
namespace Refitter.Tests;
@@ -11,9 +12,9 @@ public class IllegalSymbolsTests
[Fact]
public async Task Illegal_Symbols_In_Paths__Should_Build_Successfully()
{
- var generateCode = await GenerateCode(EmbeddedResources.SwaggerIllegalPathsJsonV3);
+ var generatedCode = await GenerateCode(EmbeddedResources.SwaggerIllegalPathsJsonV3);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -21,9 +22,9 @@ public async Task Illegal_Symbols_In_Paths__Should_Build_Successfully()
[Fact]
public async Task Illegal_Symbols_In_Title__Should_Build_Successfully()
{
- var generateCode = await GenerateCode(EmbeddedResources.SwaggerIllegalSymbolsInTitleJsonV3);
+ var generatedCode = await GenerateCode(EmbeddedResources.SwaggerIllegalSymbolsInTitleJsonV3);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -46,4 +47,4 @@ private static async Task GenerateCode(
return sut.Generate();
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/OpenApiDocumentFactoryTests.cs b/src/Refitter.Tests/OpenApiDocumentFactoryTests.cs
index c2787d4c3..720f5a39c 100644
--- a/src/Refitter.Tests/OpenApiDocumentFactoryTests.cs
+++ b/src/Refitter.Tests/OpenApiDocumentFactoryTests.cs
@@ -1,4 +1,4 @@
-using FluentAssertions;
+using FluentAssertions;
using Refitter.Core;
using Refitter.Tests.Resources;
using Xunit;
@@ -17,7 +17,7 @@ public async Task Create_From_Uri_Returns_NotNull(string url)
.Should()
.NotBeNull();
}
-
+
[Theory]
[InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")]
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV3, "SwaggerPetstore.yaml")]
@@ -31,4 +31,4 @@ public async Task Create_From_File_Returns_NotNull(SampleOpenSpecifications vers
.Should()
.NotBeNull();
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/PathParametersWithUrlTests.cs b/src/Refitter.Tests/PathParametersWithUrlTests.cs
index d7d2b2a8e..7eb61ca93 100644
--- a/src/Refitter.Tests/PathParametersWithUrlTests.cs
+++ b/src/Refitter.Tests/PathParametersWithUrlTests.cs
@@ -2,6 +2,7 @@
using Refitter.Core;
using Refitter.Tests.Build;
using Xunit;
+using Refitter.Tests.TestUtilities;
namespace Refitter.Tests;
@@ -16,8 +17,8 @@ public class PathParametersWithUrlTests
#endif
public async Task Can_Generate_Code(string url)
{
- var generateCode = await GenerateCode(url);
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var generatedCode = await GenerateCode(url);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Theory]
@@ -29,9 +30,9 @@ public async Task Can_Generate_Code(string url)
#endif
public async Task Can_Build_Generated_Code(string url)
{
- var generateCode = await GenerateCode(url);
+ var generatedCode = await GenerateCode(url);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -40,7 +41,7 @@ private static async Task GenerateCode(string url)
{
var settings = new RefitGeneratorSettings { OpenApiPath = url };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
- return generateCode;
+ var generatedCode = sut.Generate();
+ return generatedCode;
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/RefitInterfaceImportTests.cs b/src/Refitter.Tests/RefitInterfaceImportTests.cs
index 74cb14eeb..5a3caed68 100644
--- a/src/Refitter.Tests/RefitInterfaceImportTests.cs
+++ b/src/Refitter.Tests/RefitInterfaceImportTests.cs
@@ -1,4 +1,4 @@
-using FluentAssertions;
+using FluentAssertions;
using Refitter.Core;
using Xunit;
@@ -36,7 +36,7 @@ public void Should_NotContain_Any_System_Excluded()
[Fact]
public void Should_NotContain_SystemThreading_Excluded()
{
- var settings = new RefitGeneratorSettings { UseCancellationTokens = true, ReturnIObservable = false, ExcludeNamespaces = new string[] { "System.Threading$" } };
+ var settings = new RefitGeneratorSettings { UseCancellationTokens = true, ReturnIObservable = false, ExcludeNamespaces = new string[] { "System.Threading$" } };
var refitInterfaceImport = RefitInterfaceImports.GetImportedNamespaces(settings);
refitInterfaceImport.Should().NotContain("System.Threading");
refitInterfaceImport.Should().Contain("System.Threading.Tasks");
@@ -58,4 +58,4 @@ public void Should_Contain_ApizrConfiguringRequest_And_NotContain_SystemThreadin
refitInterfaceImport.Should().Contain("Apizr.Configuring.Request");
refitInterfaceImport.Should().NotContain("System.Threading");
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/Resources/EmbeddedResources.cs b/src/Refitter.Tests/Resources/EmbeddedResources.cs
index e182392d4..8109144ba 100644
--- a/src/Refitter.Tests/Resources/EmbeddedResources.cs
+++ b/src/Refitter.Tests/Resources/EmbeddedResources.cs
@@ -1,4 +1,4 @@
-namespace Refitter.Tests.Resources;
+namespace Refitter.Tests.Resources;
public static class EmbeddedResources
{
diff --git a/src/Refitter.Tests/Resources/SampleOpenSpecifications.cs b/src/Refitter.Tests/Resources/SampleOpenSpecifications.cs
index e21b3ad8b..54b1443bb 100644
--- a/src/Refitter.Tests/Resources/SampleOpenSpecifications.cs
+++ b/src/Refitter.Tests/Resources/SampleOpenSpecifications.cs
@@ -1,4 +1,4 @@
-namespace Refitter.Tests.Resources;
+namespace Refitter.Tests.Resources;
public enum SampleOpenSpecifications
{
diff --git a/src/Refitter.Tests/StringCasingExtensionTests.cs b/src/Refitter.Tests/StringCasingExtensionTests.cs
index 8fd38ef70..5a3047d95 100644
--- a/src/Refitter.Tests/StringCasingExtensionTests.cs
+++ b/src/Refitter.Tests/StringCasingExtensionTests.cs
@@ -45,4 +45,4 @@ public void CanConvertColonsToPascalCase(string input, string expected)
[InlineData("foo_bar", "FooBar")]
public void CanConvertSnakeCaseToPascalCase(string input, string expected)
=> input.ConvertSnakeCaseToPascalCase().Should().Be(expected);
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/SwaggerPetstoreApizrTests.cs b/src/Refitter.Tests/SwaggerPetstoreApizrTests.cs
index bcb410e06..95e3b369a 100644
--- a/src/Refitter.Tests/SwaggerPetstoreApizrTests.cs
+++ b/src/Refitter.Tests/SwaggerPetstoreApizrTests.cs
@@ -3,6 +3,7 @@
using Refitter.Tests.Build;
using Refitter.Tests.Resources;
using Xunit;
+using Refitter.Tests.TestUtilities;
namespace Refitter.Tests;
@@ -37,8 +38,8 @@ public ApizrGeneratorSettings()
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(version, filename);
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var generatedCode = await GenerateCode(version, filename);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Theory]
@@ -48,8 +49,8 @@ public async Task Can_Generate_Code(SampleOpenSpecifications version, string fil
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Partial_Interfaces(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(version, filename);
- generateCode.Should().Contain("partial interface");
+ var generatedCode = await GenerateCode(version, filename);
+ generatedCode.Should().Contain("partial interface");
}
[Theory]
@@ -59,11 +60,11 @@ public async Task Can_Generate_Partial_Interfaces(SampleOpenSpecifications versi
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Without_Contracts(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(
+ var generatedCode = await GenerateCode(
version,
filename,
new ApizrGeneratorSettings { GenerateXmlDocCodeComments = false, GenerateContracts = false });
- generateCode.Should().NotContain("class Pet");
+ generatedCode.Should().NotContain("class Pet");
}
[Theory]
@@ -73,11 +74,11 @@ public async Task Can_Generate_Code_Without_Contracts(SampleOpenSpecifications v
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_With_XmlDoc_Code_Comments(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(
+ var generatedCode = await GenerateCode(
version,
filename,
new ApizrGeneratorSettings { GenerateXmlDocCodeComments = true, GenerateContracts = false });
- generateCode.Should().Contain("");
+ generatedCode.Should().Contain("");
}
[Theory]
@@ -87,11 +88,11 @@ public async Task Can_Generate_Code_With_XmlDoc_Code_Comments(SampleOpenSpecific
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Without_XmlDoc_Code_Comments(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(
+ var generatedCode = await GenerateCode(
version,
filename,
new ApizrGeneratorSettings { GenerateXmlDocCodeComments = false, GenerateContracts = false });
- generateCode.Should().NotContain("");
+ generatedCode.Should().NotContain("");
}
[Theory]
@@ -101,11 +102,11 @@ public async Task Can_Generate_Code_Without_XmlDoc_Code_Comments(SampleOpenSpeci
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_With_Default_Namespace(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(
+ var generatedCode = await GenerateCode(
version,
filename,
new ApizrGeneratorSettings { Namespace = "Some.Other.Namespace" });
- generateCode.Should().Contain("namespace Some.Other.Namespace");
+ generatedCode.Should().Contain("namespace Some.Other.Namespace");
}
[Theory]
@@ -115,9 +116,9 @@ public async Task Can_Generate_Code_With_Default_Namespace(SampleOpenSpecificati
[InlineData(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"}};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("interface ISomeOtherName");
+ var settings = new ApizrGeneratorSettings { Naming = { UseOpenApiTitle = false, InterfaceName = "SomeOtherName" } };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("interface ISomeOtherName");
}
[Theory]
@@ -127,9 +128,9 @@ public async Task Can_Generate_Code_With_Fixed_Interface_Name(SampleOpenSpecific
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Without_AutoGenerated_Header(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {AddAutoGeneratedHeader = false};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("This code was generated by Refitter");
+ var settings = new ApizrGeneratorSettings { AddAutoGeneratedHeader = false };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("This code was generated by Refitter");
}
[Theory]
@@ -139,9 +140,9 @@ public async Task Can_Generate_Code_Without_AutoGenerated_Header(SampleOpenSpeci
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_That_Returns_IApiResponse(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {ReturnIApiResponse = true};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("Task>");
+ var settings = new ApizrGeneratorSettings { ReturnIApiResponse = true };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("Task>");
}
[Theory]
@@ -161,10 +162,10 @@ public async Task Can_Generate_Code_With_Type_Override(SampleOpenSpecifications
["addPet"] = "void", // Remove type
},
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("Task> GetPetById");
- generateCode.Should().Contain("Task DeletePet");
- generateCode.Should().Contain("Task AddPet");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("Task> GetPetById");
+ generatedCode.Should().Contain("Task DeletePet");
+ generatedCode.Should().Contain("Task AddPet");
}
[Theory]
@@ -174,9 +175,9 @@ public async Task Can_Generate_Code_With_Type_Override(SampleOpenSpecifications
[InlineData(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};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("internal partial class");
+ var settings = new ApizrGeneratorSettings { TypeAccessibility = TypeAccessibility.Internal };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("internal partial class");
}
[Theory]
@@ -186,9 +187,9 @@ public async Task Can_Generate_Code_With_Internal_Contract_Types(SampleOpenSpeci
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_With_Internal_Interface(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {TypeAccessibility = TypeAccessibility.Internal};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("internal partial interface");
+ var settings = new ApizrGeneratorSettings { TypeAccessibility = TypeAccessibility.Internal };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("internal partial interface");
}
[Theory]
@@ -198,9 +199,9 @@ public async Task Can_Generate_Code_With_Internal_Interface(SampleOpenSpecificat
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Without_CancellationToken(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {UseCancellationTokens = true};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("CancellationToken cancellationToken = default"); // Handled by Apizr request options
+ var settings = new ApizrGeneratorSettings { UseCancellationTokens = true };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("CancellationToken cancellationToken = default"); // Handled by Apizr request options
}
[Theory]
@@ -217,9 +218,9 @@ public async Task Can_Generate_Code_With_Correct_Usings(
string filename,
bool cancellationTokens)
{
- var settings = new ApizrGeneratorSettings {UseCancellationTokens = cancellationTokens};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("CancellationToken cancellationToken = default"); // Handled by Apizr request options
+ var settings = new ApizrGeneratorSettings { UseCancellationTokens = cancellationTokens };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("CancellationToken cancellationToken = default"); // Handled by Apizr request options
}
[Theory]
@@ -229,9 +230,9 @@ public async Task Can_Generate_Code_With_Correct_Usings(
[InlineData(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};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[Header(\"api-key\")] string api_key");
+ var settings = new ApizrGeneratorSettings { GenerateOperationHeaders = true };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[Header(\"api-key\")] string api_key");
}
[Theory]
@@ -241,9 +242,9 @@ public async Task Can_Generate_Code_With_OperationHeaders_With_Different_Headers
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_With_OperationHeaders(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {GenerateOperationHeaders = true};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[Header(\"api_key\")] string api_key");
+ var settings = new ApizrGeneratorSettings { GenerateOperationHeaders = true };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[Header(\"api_key\")] string api_key");
}
[Theory]
@@ -253,9 +254,9 @@ public async Task Can_Generate_Code_With_OperationHeaders(SampleOpenSpecificatio
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Without_OperationHeaders(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {GenerateOperationHeaders = false};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("[Header(\"api_key\")] string? api_key");
+ var settings = new ApizrGeneratorSettings { GenerateOperationHeaders = false };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("[Header(\"api_key\")] string? api_key");
}
[Theory]
@@ -265,9 +266,9 @@ public async Task Can_Generate_Code_Without_OperationHeaders(SampleOpenSpecifica
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithUnsafeAuthenticationHeaders, "SwaggerPetstoreWithUnsafeAuthenticationHeaders.yaml")]
public async Task Can_Generate_Code_With_Unsafe_AuthenticationHeaders(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {GenerateAuthenticationHeader = true};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[Header(\"auth.key\")] string auth_key");
+ var settings = new ApizrGeneratorSettings { GenerateAuthenticationHeader = true };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[Header(\"auth.key\")] string auth_key");
}
[Theory]
@@ -277,9 +278,9 @@ public async Task Can_Generate_Code_With_Unsafe_AuthenticationHeaders(SampleOpen
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2WithAuthenticationHeaders, "SwaggerPetstoreWithAuthenticationHeaders.yaml")]
public async Task Can_Generate_Code_With_AuthenticationHeaders(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {GenerateAuthenticationHeader = true};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[Header(\"auth_key\")] string auth_key");
+ var settings = new ApizrGeneratorSettings { GenerateAuthenticationHeader = true };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[Header(\"auth_key\")] string auth_key");
}
[Theory]
@@ -289,9 +290,9 @@ public async Task Can_Generate_Code_With_AuthenticationHeaders(SampleOpenSpecifi
[InlineData(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};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[Header(\"auth_key\")] string auth_key");
+ var settings = new ApizrGeneratorSettings { GenerateOperationHeaders = false, GenerateAuthenticationHeader = true };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[Header(\"auth_key\")] string auth_key");
}
[Theory]
@@ -301,9 +302,9 @@ public async Task Can_Generate_Code_With_AuthenticationHeaders_Without_Operation
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Without_AuthenticationHeaders(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {GenerateAuthenticationHeader = false};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("[Header(\"auth_key\")] string? auth_key");
+ var settings = new ApizrGeneratorSettings { GenerateAuthenticationHeader = false };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("[Header(\"auth_key\")] string? auth_key");
}
[Theory]
@@ -314,11 +315,11 @@ public async Task Can_Generate_Code_Without_AuthenticationHeaders(SampleOpenSpec
public async Task Can_Generate_Code_With_Accept_Request_Header(SampleOpenSpecifications version, string filename)
{
var settings = new ApizrGeneratorSettings();
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
if (version is SampleOpenSpecifications.SwaggerPetstoreJsonV3 or SampleOpenSpecifications.SwaggerPetstoreYamlV3)
- generateCode.Should().Contain("[Headers(\"Accept: application/json\"");
+ generatedCode.Should().Contain("[Headers(\"Accept: application/json\"");
else if (version is SampleOpenSpecifications.SwaggerPetstoreJsonV2 or SampleOpenSpecifications.SwaggerPetstoreYamlV2)
- generateCode.Should().NotContain("[Headers(\"Accept: application/json\"");
+ generatedCode.Should().NotContain("[Headers(\"Accept: application/json\"");
}
[Theory]
@@ -326,9 +327,9 @@ public async Task Can_Generate_Code_With_Accept_Request_Header(SampleOpenSpecifi
[InlineData(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};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("[Headers(\"Accept");
+ var settings = new ApizrGeneratorSettings { AddAcceptHeaders = false };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("[Headers(\"Accept");
}
[Theory]
@@ -338,9 +339,9 @@ public async Task Can_Generate_Code_With_No_Accept_Request_Header(SampleOpenSpec
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_With_Multiple_Interfaces(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {MultipleInterfaces = MultipleInterfaces.ByEndpoint};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var settings = new ApizrGeneratorSettings { MultipleInterfaces = MultipleInterfaces.ByEndpoint };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Theory]
@@ -358,8 +359,8 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup(SampleOpenSpecifi
TransientErrorHandler = TransientErrorHandler.Polly
}
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("AddApizrManagerFor");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("AddApizrManagerFor");
}
[Theory]
@@ -377,10 +378,10 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup_With_Polly(Sample
TransientErrorHandler = TransientErrorHandler.Polly
}
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("using Polly");
- generateCode.Should().Contain("AddPolicyHandler");
- generateCode.Should().Contain("Backoff.DecorrelatedJitterBackoffV2");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("using Polly");
+ generatedCode.Should().Contain("AddPolicyHandler");
+ generatedCode.Should().Contain("Backoff.DecorrelatedJitterBackoffV2");
}
[Theory]
@@ -398,10 +399,10 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup_Without_Polly(Sam
TransientErrorHandler = TransientErrorHandler.None
}
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("using Polly");
- generateCode.Should().NotContain("AddPolicyHandler");
- generateCode.Should().NotContain("Backoff.DecorrelatedJitterBackoffV2");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("using Polly");
+ generatedCode.Should().NotContain("AddPolicyHandler");
+ generatedCode.Should().NotContain("Backoff.DecorrelatedJitterBackoffV2");
}
[Theory]
@@ -422,9 +423,9 @@ public async Task Can_Generate_Code_GeneratedCode_Attribute(
string filename,
MultipleInterfaces multipleInterfaces)
{
- var settings = new ApizrGeneratorSettings {MultipleInterfaces = multipleInterfaces};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[System.CodeDom.Compiler.GeneratedCode(\"Refitter\"");
+ var settings = new ApizrGeneratorSettings { MultipleInterfaces = multipleInterfaces };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[System.CodeDom.Compiler.GeneratedCode(\"Refitter\"");
}
[Theory]
@@ -439,10 +440,11 @@ public async Task Can_Generate_Code_With_Multiple_Interfaces_And_OperationNameTe
{
var settings = new ApizrGeneratorSettings
{
- MultipleInterfaces = multipleInterfaces, OperationNameTemplate = "ExecuteAsync"
+ MultipleInterfaces = multipleInterfaces,
+ OperationNameTemplate = "ExecuteAsync"
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("ExecuteAsync(");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("ExecuteAsync(");
}
[Theory]
@@ -454,9 +456,9 @@ public async Task Can_Generate_Code_With_Multiple_Interfaces_And_OperationNameTe
#endif
public async Task Can_Build_Generated_Code(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(version, filename);
+ var generatedCode = await GenerateCode(version, filename);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -470,10 +472,10 @@ public async Task Can_Build_Generated_Code(SampleOpenSpecifications version, str
#endif
public async Task Can_Build_Generated_Code_With_IApiResponse(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {ReturnIApiResponse = true};
- var generateCode = await GenerateCode(version, filename, settings);
+ var settings = new ApizrGeneratorSettings { ReturnIApiResponse = true };
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -482,11 +484,11 @@ public async Task Can_Build_Generated_Code_With_IApiResponse(SampleOpenSpecifica
[InlineData(SampleOpenSpecifications.SwaggerPetstoreJsonV3, "SwaggerPetstore.json")]
public async Task Can_Build_Generated_Code_With_IObservableResponse(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {ReturnIObservable = true};
- var generateCode = await GenerateCode(version, filename, settings);
+ var settings = new ApizrGeneratorSettings { ReturnIObservable = true };
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -500,10 +502,10 @@ public async Task Can_Build_Generated_Code_With_IObservableResponse(SampleOpenSp
#endif
public async Task Can_Build_Generated_Code_With_Multiple_Interfaces(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {MultipleInterfaces = MultipleInterfaces.ByEndpoint};
- var generateCode = await GenerateCode(version, filename, settings);
+ var settings = new ApizrGeneratorSettings { MultipleInterfaces = MultipleInterfaces.ByEndpoint };
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -517,10 +519,10 @@ public async Task Can_Build_Generated_Code_With_Multiple_Interfaces(SampleOpenSp
#endif
public async Task Can_Build_Generated_Code_With_Multiple_Interfaces_ByTag(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {MultipleInterfaces = MultipleInterfaces.ByTag};
- var generateCode = await GenerateCode(version, filename, settings);
+ var settings = new ApizrGeneratorSettings { MultipleInterfaces = MultipleInterfaces.ByTag };
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -535,9 +537,9 @@ public async Task Can_Build_Generated_Code_From_Url(string url)
{
var settings = new ApizrGeneratorSettings { OpenApiPath = url };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
+ var generatedCode = sut.Generate();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -550,8 +552,8 @@ public async Task Can_Build_Generated_Code_From_Url(string url)
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Obsolete_Attribute(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(version, filename);
- generateCode.Should().Contain("[System.Obsolete]");
+ var generatedCode = await GenerateCode(version, filename);
+ generatedCode.Should().Contain("[System.Obsolete]");
}
[Theory]
@@ -561,9 +563,9 @@ public async Task Can_Generate_Code_Obsolete_Attribute(SampleOpenSpecifications
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Without_Obsolete_Operations(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {GenerateDeprecatedOperations = false};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain(@"/pet/findByTags");
+ var settings = new ApizrGeneratorSettings { GenerateDeprecatedOperations = false };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain(@"/pet/findByTags");
}
[Theory]
@@ -573,9 +575,9 @@ public async Task Can_Generate_Code_Without_Obsolete_Operations(SampleOpenSpecif
[InlineData(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"};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("FindPetsByStatusAsync");
+ var settings = new ApizrGeneratorSettings { OperationNameTemplate = "{operationName}Async" };
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("FindPetsByStatusAsync");
}
[Theory]
@@ -595,9 +597,9 @@ public async Task Can_Generate_Code_With_OperationNameGenerator(OperationNameGen
{
OperationNameGenerator = type
};
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -611,10 +613,11 @@ public async Task Can_Generate_Code_Without_AdditionalProperties(SampleOpenSpeci
{
var settings = new ApizrGeneratorSettings
{
- GenerateDefaultAdditionalProperties = false, OperationNameTemplate = "{operationName}Async"
+ GenerateDefaultAdditionalProperties = false,
+ OperationNameTemplate = "{operationName}Async"
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("Dictionary AdditionalProperties");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("Dictionary AdditionalProperties");
}
[Theory]
@@ -628,12 +631,13 @@ public async Task Can_Generate_Code_With_NonNullable_Return_Types(SampleOpenSpec
{
CodeGeneratorSettings = new CodeGeneratorSettings
{
- GenerateNullableReferenceTypes = true, GenerateOptionalPropertiesAsNullable = true
+ GenerateNullableReferenceTypes = true,
+ GenerateOptionalPropertiesAsNullable = true
}
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("Task");
- generateCode.Should().NotContain("Task");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("Task");
+ generatedCode.Should().NotContain("Task");
}
[Theory]
@@ -643,15 +647,18 @@ public async Task Can_Generate_Code_With_NonNullable_Return_Types(SampleOpenSpec
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_With_NonNullable_Return_Types_In_ApiResponse(SampleOpenSpecifications version, string filename)
{
- var settings = new ApizrGeneratorSettings {ReturnIApiResponse = true, CodeGeneratorSettings = new CodeGeneratorSettings
+ var settings = new ApizrGeneratorSettings
+ {
+ ReturnIApiResponse = true,
+ CodeGeneratorSettings = new CodeGeneratorSettings
{
GenerateNullableReferenceTypes = true,
GenerateOptionalPropertiesAsNullable = true
}
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("Task>");
- generateCode.Should().NotContain("Task>");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("Task>");
+ generatedCode.Should().NotContain("Task>");
}
[Theory]
@@ -662,8 +669,8 @@ public async Task Can_Generate_Code_With_NonNullable_Return_Types_In_ApiResponse
public async Task Can_Generate_Code_With_ImmutableRecords(SampleOpenSpecifications version, string filename)
{
var settings = new ApizrGeneratorSettings { ImmutableRecords = true };
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("record Pet");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("record Pet");
}
[Theory]
@@ -674,13 +681,13 @@ public async Task Can_Generate_Code_With_ImmutableRecords(SampleOpenSpecificatio
public async Task Can_Generate_Code_With_DynamicQuerystringParameter(SampleOpenSpecifications version, string filename)
{
var settings = new ApizrGeneratorSettings { UseDynamicQuerystringParameters = true };
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
- if(version is SampleOpenSpecifications.SwaggerPetstoreJsonV3 or SampleOpenSpecifications.SwaggerPetstoreYamlV3)
- generateCode.Should().Contain("long petId, [Query] UpdatePetWithFormQueryParams queryParams, [RequestOptions] IApizrRequestOptions options);")
+ if (version is SampleOpenSpecifications.SwaggerPetstoreJsonV3 or SampleOpenSpecifications.SwaggerPetstoreYamlV3)
+ generatedCode.Should().Contain("long petId, [Query] UpdatePetWithFormQueryParams queryParams, [RequestOptions] IApizrRequestOptions options);")
.And.Contain("public class UpdatePetWithFormQueryParams");
- generateCode.Should().Contain("[Query] LoginUserQueryParams queryParams, [RequestOptions] IApizrRequestOptions options);")
+ generatedCode.Should().Contain("[Query] LoginUserQueryParams queryParams, [RequestOptions] IApizrRequestOptions options);")
.And.Contain("public class LoginUserQueryParams");
}
diff --git a/src/Refitter.Tests/SwaggerPetstoreMultipleFileTests.cs b/src/Refitter.Tests/SwaggerPetstoreMultipleFileTests.cs
index fb087875d..cc8192d4e 100644
--- a/src/Refitter.Tests/SwaggerPetstoreMultipleFileTests.cs
+++ b/src/Refitter.Tests/SwaggerPetstoreMultipleFileTests.cs
@@ -1,4 +1,4 @@
-using FluentAssertions;
+using FluentAssertions;
using Refitter.Core;
using Refitter.Tests.Build;
using Refitter.Tests.Resources;
diff --git a/src/Refitter.Tests/SwaggerPetstoreTests.cs b/src/Refitter.Tests/SwaggerPetstoreTests.cs
index 1033c9ec1..9ba9f1448 100644
--- a/src/Refitter.Tests/SwaggerPetstoreTests.cs
+++ b/src/Refitter.Tests/SwaggerPetstoreTests.cs
@@ -3,6 +3,7 @@
using Refitter.Tests.Build;
using Refitter.Tests.Resources;
using Xunit;
+using Refitter.Tests.TestUtilities;
namespace Refitter.Tests;
@@ -15,8 +16,8 @@ public class SwaggerPetstoreTests
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(version, filename);
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var generatedCode = await GenerateCode(version, filename);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Theory]
@@ -26,8 +27,8 @@ public async Task Can_Generate_Code(SampleOpenSpecifications version, string fil
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Partial_Interfaces(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(version, filename);
- generateCode.Should().Contain("partial interface");
+ var generatedCode = await GenerateCode(version, filename);
+ generatedCode.Should().Contain("partial interface");
}
[Theory]
@@ -37,11 +38,11 @@ public async Task Can_Generate_Partial_Interfaces(SampleOpenSpecifications versi
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Without_Contracts(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(
+ var generatedCode = await GenerateCode(
version,
filename,
new RefitGeneratorSettings { GenerateXmlDocCodeComments = false, GenerateContracts = false });
- generateCode.Should().NotContain("class Pet");
+ generatedCode.Should().NotContain("class Pet");
}
[Theory]
@@ -51,11 +52,11 @@ public async Task Can_Generate_Code_Without_Contracts(SampleOpenSpecifications v
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Without_Clients(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(
+ var generatedCode = await GenerateCode(
version,
filename,
new RefitGeneratorSettings { GenerateXmlDocCodeComments = false, GenerateClients = false });
- generateCode.Should().NotContain("ISwaggerPetstore");
+ generatedCode.Should().NotContain("ISwaggerPetstore");
}
[Theory]
@@ -65,11 +66,11 @@ public async Task Can_Generate_Code_Without_Clients(SampleOpenSpecifications ver
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_With_XmlDoc_Code_Comments(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(
+ var generatedCode = await GenerateCode(
version,
filename,
new RefitGeneratorSettings { GenerateXmlDocCodeComments = true, GenerateContracts = false });
- generateCode.Should().Contain("");
+ generatedCode.Should().Contain("");
}
[Theory]
@@ -79,11 +80,11 @@ public async Task Can_Generate_Code_With_XmlDoc_Code_Comments(SampleOpenSpecific
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Without_XmlDoc_Code_Comments(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(
+ var generatedCode = await GenerateCode(
version,
filename,
new RefitGeneratorSettings { GenerateXmlDocCodeComments = false, GenerateContracts = false });
- generateCode.Should().NotContain("");
+ generatedCode.Should().NotContain("");
}
[Theory]
@@ -93,11 +94,11 @@ public async Task Can_Generate_Code_Without_XmlDoc_Code_Comments(SampleOpenSpeci
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_With_Default_Namespace(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(
+ var generatedCode = await GenerateCode(
version,
filename,
new RefitGeneratorSettings { Namespace = "Some.Other.Namespace" });
- generateCode.Should().Contain("namespace Some.Other.Namespace");
+ generatedCode.Should().Contain("namespace Some.Other.Namespace");
}
[Theory]
@@ -110,8 +111,8 @@ public async Task Can_Generate_Code_With_Fixed_Interface_Name(SampleOpenSpecific
var settings = new RefitGeneratorSettings();
settings.Naming.UseOpenApiTitle = false;
settings.Naming.InterfaceName = "SomeOtherName";
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("interface ISomeOtherName");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("interface ISomeOtherName");
}
[Theory]
@@ -123,8 +124,8 @@ public async Task Can_Generate_Code_Without_AutoGenerated_Header(SampleOpenSpeci
{
var settings = new RefitGeneratorSettings();
settings.AddAutoGeneratedHeader = false;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("This code was generated by Refitter");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("This code was generated by Refitter");
}
[Theory]
@@ -136,8 +137,8 @@ public async Task Can_Generate_Code_That_Returns_IApiResponse(SampleOpenSpecific
{
var settings = new RefitGeneratorSettings();
settings.ReturnIApiResponse = true;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("Task>");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("Task>");
}
[Theory]
@@ -157,10 +158,10 @@ public async Task Can_Generate_Code_With_Type_Override(SampleOpenSpecifications
["addPet"] = "void", // Remove type
},
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("Task> GetPetById");
- generateCode.Should().Contain("Task DeletePet");
- generateCode.Should().Contain("Task AddPet");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("Task> GetPetById");
+ generatedCode.Should().Contain("Task DeletePet");
+ generatedCode.Should().Contain("Task AddPet");
}
[Theory]
@@ -172,8 +173,8 @@ public async Task Can_Generate_Code_With_Internal_Contract_Types(SampleOpenSpeci
{
var settings = new RefitGeneratorSettings();
settings.TypeAccessibility = TypeAccessibility.Internal;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("internal partial class");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("internal partial class");
}
[Theory]
@@ -185,8 +186,8 @@ public async Task Can_Generate_Code_With_Internal_Interface(SampleOpenSpecificat
{
var settings = new RefitGeneratorSettings();
settings.TypeAccessibility = TypeAccessibility.Internal;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("internal partial interface");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("internal partial interface");
}
[Theory]
@@ -198,8 +199,8 @@ public async Task Can_Generate_Code_With_CancellationToken(SampleOpenSpecificati
{
var settings = new RefitGeneratorSettings();
settings.UseCancellationTokens = true;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("CancellationToken cancellationToken = default");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("CancellationToken cancellationToken = default");
}
[Theory]
@@ -218,8 +219,8 @@ public async Task Can_Generate_Code_With_Correct_Usings(
{
var settings = new RefitGeneratorSettings();
settings.UseCancellationTokens = cancellationTokens;
- var generateCode = await GenerateCode(version, filename, settings);
- Assert.Equal(cancellationTokens, generateCode.Contains("using System.Threading;"));
+ var generatedCode = await GenerateCode(version, filename, settings);
+ Assert.Equal(cancellationTokens, generatedCode.Contains("using System.Threading;"));
}
[Theory]
@@ -231,8 +232,8 @@ public async Task Can_Generate_Code_With_OperationHeaders_With_Different_Headers
{
var settings = new RefitGeneratorSettings();
settings.GenerateOperationHeaders = true;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[Header(\"api-key\")] string api_key");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[Header(\"api-key\")] string api_key");
}
[Theory]
@@ -244,8 +245,8 @@ public async Task Can_Generate_Code_With_OperationHeaders(SampleOpenSpecificatio
{
var settings = new RefitGeneratorSettings();
settings.GenerateOperationHeaders = true;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[Header(\"api_key\")] string api_key");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[Header(\"api_key\")] string api_key");
}
[Theory]
@@ -257,8 +258,8 @@ public async Task Can_Generate_Code_Without_OperationHeaders(SampleOpenSpecifica
{
var settings = new RefitGeneratorSettings();
settings.GenerateOperationHeaders = false;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("[Header(\"api_key\")] string? api_key");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("[Header(\"api_key\")] string? api_key");
}
[Theory]
@@ -270,8 +271,8 @@ public async Task Can_Generate_Code_With_Unsafe_AuthenticationHeaders(SampleOpen
{
var settings = new RefitGeneratorSettings();
settings.GenerateAuthenticationHeader = true;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[Header(\"auth.key\")] string auth_key");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[Header(\"auth.key\")] string auth_key");
}
[Theory]
@@ -283,8 +284,8 @@ public async Task Can_Generate_Code_With_AuthenticationHeaders(SampleOpenSpecifi
{
var settings = new RefitGeneratorSettings();
settings.GenerateAuthenticationHeader = true;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[Header(\"auth_key\")] string auth_key");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[Header(\"auth_key\")] string auth_key");
}
[Theory]
@@ -297,8 +298,8 @@ public async Task Can_Generate_Code_With_AuthenticationHeaders_Without_Operation
var settings = new RefitGeneratorSettings();
settings.GenerateOperationHeaders = false;
settings.GenerateAuthenticationHeader = true;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[Header(\"auth_key\")] string auth_key");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[Header(\"auth_key\")] string auth_key");
}
[Theory]
@@ -310,8 +311,8 @@ public async Task Can_Generate_Code_Without_AuthenticationHeaders(SampleOpenSpec
{
var settings = new RefitGeneratorSettings();
settings.GenerateAuthenticationHeader = false;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("[Header(\"auth_key\")] string? auth_key");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("[Header(\"auth_key\")] string? auth_key");
}
[Theory]
@@ -322,11 +323,11 @@ public async Task Can_Generate_Code_Without_AuthenticationHeaders(SampleOpenSpec
public async Task Can_Generate_Code_With_Accept_Request_Header(SampleOpenSpecifications version, string filename)
{
var settings = new RefitGeneratorSettings();
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
if (version is SampleOpenSpecifications.SwaggerPetstoreJsonV3 or SampleOpenSpecifications.SwaggerPetstoreYamlV3)
- generateCode.Should().Contain("[Headers(\"Accept: application/json\"");
+ generatedCode.Should().Contain("[Headers(\"Accept: application/json\"");
else if (version is SampleOpenSpecifications.SwaggerPetstoreJsonV2 or SampleOpenSpecifications.SwaggerPetstoreYamlV2)
- generateCode.Should().NotContain("[Headers(\"Accept: application/json\"");
+ generatedCode.Should().NotContain("[Headers(\"Accept: application/json\"");
}
[Theory]
@@ -336,8 +337,8 @@ public async Task Can_Generate_Code_With_No_Accept_Request_Header(SampleOpenSpec
{
var settings = new RefitGeneratorSettings();
settings.AddAcceptHeaders = false;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("[Headers(\"Accept");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("[Headers(\"Accept");
}
[Theory]
@@ -349,8 +350,8 @@ public async Task Can_Generate_Code_With_Multiple_Interfaces(SampleOpenSpecifica
{
var settings = new RefitGeneratorSettings();
settings.MultipleInterfaces = MultipleInterfaces.ByEndpoint;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotBeNullOrWhiteSpace();
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotBeNullOrWhiteSpace();
}
[Theory]
@@ -366,8 +367,8 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup(SampleOpenSpecifi
BaseUrl = "https://petstore3.swagger.io/api/v3",
TransientErrorHandler = TransientErrorHandler.Polly
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("ConfigureRefitClients");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("ConfigureRefitClients");
}
[Theory]
@@ -383,8 +384,8 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup_With_Polly(Sample
BaseUrl = "https://petstore3.swagger.io/api/v3",
TransientErrorHandler = TransientErrorHandler.Polly
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("using Polly");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("using Polly");
}
[Theory]
@@ -400,8 +401,8 @@ public async Task Can_Generate_Code_Dependency_Injection_Setup_Without_Polly(Sam
BaseUrl = "https://petstore3.swagger.io/api/v3",
TransientErrorHandler = TransientErrorHandler.None
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("using Polly");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("using Polly");
}
[Theory]
@@ -429,8 +430,8 @@ public async Task Can_Generate_Code_Apizr_Setup(SampleOpenSpecifications version
WithFileTransfer = true
}
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("AddApizrManagerFor");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("AddApizrManagerFor");
}
[Theory]
@@ -458,8 +459,8 @@ public async Task Can_Generate_Code_Apizr_Setup_With_Polly(SampleOpenSpecificati
WithFileTransfer = true
}
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("using Polly");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("using Polly");
}
[Theory]
@@ -487,8 +488,8 @@ public async Task Can_Generate_Code_Apizr_Setup_Without_Polly(SampleOpenSpecific
WithFileTransfer = true
}
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("using Polly");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("using Polly");
}
[Theory]
@@ -511,8 +512,8 @@ public async Task Can_Generate_Code_GeneratedCode_Attribute(
{
var settings = new RefitGeneratorSettings();
settings.MultipleInterfaces = multipleInterfaces;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("[System.CodeDom.Compiler.GeneratedCode(\"Refitter\"");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("[System.CodeDom.Compiler.GeneratedCode(\"Refitter\"");
}
[Theory]
@@ -528,8 +529,8 @@ public async Task Can_Generate_Code_With_Multiple_Interfaces_And_OperationNameTe
var settings = new RefitGeneratorSettings();
settings.MultipleInterfaces = multipleInterfaces;
settings.OperationNameTemplate = "ExecuteAsync";
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("ExecuteAsync(");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("ExecuteAsync(");
}
[Theory]
@@ -541,9 +542,9 @@ public async Task Can_Generate_Code_With_Multiple_Interfaces_And_OperationNameTe
#endif
public async Task Can_Build_Generated_Code(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(version, filename);
+ var generatedCode = await GenerateCode(version, filename);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -559,9 +560,9 @@ public async Task Can_Build_Generated_Code_With_IApiResponse(SampleOpenSpecifica
{
var settings = new RefitGeneratorSettings();
settings.ReturnIApiResponse = true;
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -572,10 +573,10 @@ public async Task Can_Build_Generated_Code_With_IObservableResponse(SampleOpenSp
{
var settings = new RefitGeneratorSettings();
settings.ReturnIObservable = true;
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -591,9 +592,9 @@ public async Task Can_Build_Generated_Code_With_Multiple_Interfaces(SampleOpenSp
{
var settings = new RefitGeneratorSettings();
settings.MultipleInterfaces = MultipleInterfaces.ByEndpoint;
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -609,9 +610,9 @@ public async Task Can_Build_Generated_Code_With_Multiple_Interfaces_ByTag(Sample
{
var settings = new RefitGeneratorSettings();
settings.MultipleInterfaces = MultipleInterfaces.ByTag;
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -626,9 +627,9 @@ public async Task Can_Build_Generated_Code_From_Url(string url)
{
var settings = new RefitGeneratorSettings { OpenApiPath = url };
var sut = await RefitGenerator.CreateAsync(settings);
- var generateCode = sut.Generate();
+ var generatedCode = sut.Generate();
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -660,8 +661,8 @@ private static async Task GenerateCode(
[InlineData(SampleOpenSpecifications.SwaggerPetstoreYamlV2, "SwaggerPetstore.yaml")]
public async Task Can_Generate_Code_Obsolete_Attribute(SampleOpenSpecifications version, string filename)
{
- var generateCode = await GenerateCode(version, filename);
- generateCode.Should().Contain("[System.Obsolete]");
+ var generatedCode = await GenerateCode(version, filename);
+ generatedCode.Should().Contain("[System.Obsolete]");
}
[Theory]
@@ -673,8 +674,8 @@ public async Task Can_Generate_Code_Without_Obsolete_Operations(SampleOpenSpecif
{
var settings = new RefitGeneratorSettings();
settings.GenerateDeprecatedOperations = false;
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain(@"/pet/findByTags");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain(@"/pet/findByTags");
}
[Theory]
@@ -686,8 +687,8 @@ public async Task Can_Generate_Code_With_Operation_Name_Template(SampleOpenSpeci
{
var settings = new RefitGeneratorSettings();
settings.OperationNameTemplate = "{operationName}Async";
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("FindPetsByStatusAsync");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("FindPetsByStatusAsync");
}
[Theory]
@@ -707,9 +708,9 @@ public async Task Can_Generate_Code_With_OperationNameGenerator(OperationNameGen
{
OperationNameGenerator = type
};
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -724,8 +725,8 @@ public async Task Can_Generate_Code_Without_AdditionalProperties(SampleOpenSpeci
var settings = new RefitGeneratorSettings();
settings.GenerateDefaultAdditionalProperties = false;
settings.OperationNameTemplate = "{operationName}Async";
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().NotContain("Dictionary AdditionalProperties");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().NotContain("Dictionary AdditionalProperties");
}
[Theory]
@@ -741,9 +742,9 @@ public async Task Can_Generate_Code_With_NonNullable_Return_Types(SampleOpenSpec
GenerateNullableReferenceTypes = true,
GenerateOptionalPropertiesAsNullable = true
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("Task");
- generateCode.Should().NotContain("Task");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("Task");
+ generatedCode.Should().NotContain("Task");
}
[Theory]
@@ -760,9 +761,9 @@ public async Task Can_Generate_Code_With_NonNullable_Return_Types_In_ApiResponse
GenerateNullableReferenceTypes = true,
GenerateOptionalPropertiesAsNullable = true
};
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("Task>");
- generateCode.Should().NotContain("Task>");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("Task>");
+ generatedCode.Should().NotContain("Task>");
}
[Theory]
@@ -773,8 +774,8 @@ public async Task Can_Generate_Code_With_NonNullable_Return_Types_In_ApiResponse
public async Task Can_Generate_Code_With_ImmutableRecords(SampleOpenSpecifications version, string filename)
{
var settings = new RefitGeneratorSettings { ImmutableRecords = true };
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("record Pet");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("record Pet");
}
[Theory]
@@ -785,12 +786,12 @@ public async Task Can_Generate_Code_With_ImmutableRecords(SampleOpenSpecificatio
public async Task Can_Generate_Code_With_DynamicQuerystringParameters(SampleOpenSpecifications version, string filename)
{
var settings = new RefitGeneratorSettings { UseDynamicQuerystringParameters = true };
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
if (version is SampleOpenSpecifications.SwaggerPetstoreJsonV3 or SampleOpenSpecifications.SwaggerPetstoreYamlV3)
- generateCode.Should().Contain("long petId, [Query] UpdatePetWithFormQueryParams queryParams);")
+ generatedCode.Should().Contain("long petId, [Query] UpdatePetWithFormQueryParams queryParams);")
.And.Contain("public class UpdatePetWithFormQueryParams");
- generateCode.Should().Contain("[Query] LoginUserQueryParams queryParams);")
+ generatedCode.Should().Contain("[Query] LoginUserQueryParams queryParams);")
.And.Contain("public class LoginUserQueryParams");
}
@@ -802,8 +803,8 @@ public async Task Can_Generate_Code_With_DynamicQuerystringParameters(SampleOpen
public async Task Can_Generate_Code_With_IDisposable(SampleOpenSpecifications version, string filename)
{
var settings = new RefitGeneratorSettings { GenerateDisposableClients = true };
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("IDisposable");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("IDisposable");
}
[Theory]
@@ -817,9 +818,9 @@ public async Task Can_Build_Generated_Code_With_IDisposable(SampleOpenSpecificat
{
var settings = new RefitGeneratorSettings();
settings.GenerateDisposableClients = true;
- var generateCode = await GenerateCode(version, filename, settings);
+ var generatedCode = await GenerateCode(version, filename, settings);
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
@@ -832,8 +833,8 @@ public async Task Can_Build_Generated_Code_With_IDisposable(SampleOpenSpecificat
public async Task Can_Generate_Interface_With_Summary(SampleOpenSpecifications version, string filename)
{
var settings = new RefitGeneratorSettings { GenerateXmlDocCodeComments = true };
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("Swagger Petstore");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("Swagger Petstore");
}
[Theory]
@@ -844,9 +845,9 @@ public async Task Can_Generate_Interface_With_Summary(SampleOpenSpecifications v
public async Task Can_Generate_Interfaces_Filtered_By_Path_Match(SampleOpenSpecifications version, string filename)
{
var settings = new RefitGeneratorSettings { IncludePathMatches = ["^/pet.*"] };
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("\"/pet\"");
- generateCode.Should().Contain("\"/pet/{petId}\"");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("\"/pet\"");
+ generatedCode.Should().Contain("\"/pet/{petId}\"");
}
[Theory]
@@ -859,10 +860,10 @@ public async Task Can_Generate_Interfaces_Filtered_By_Path_Match(SampleOpenSpeci
public async Task Can_Import_Contracts_Namespace(SampleOpenSpecifications version, string filename)
{
var settings = new RefitGeneratorSettings { ContractsNamespace = "Contracts" };
- var generateCode = await GenerateCode(version, filename, settings);
- generateCode.Should().Contain("using Contracts;");
+ var generatedCode = await GenerateCode(version, filename, settings);
+ generatedCode.Should().Contain("using Contracts;");
BuildHelper
- .BuildCSharp(generateCode)
+ .BuildCSharp(generatedCode)
.Should()
.BeTrue();
}
diff --git a/src/Refitter.Tests/TestFile.cs b/src/Refitter.Tests/TestFile.cs
index 9f7a29e74..3bb72a604 100644
--- a/src/Refitter.Tests/TestFile.cs
+++ b/src/Refitter.Tests/TestFile.cs
@@ -1,4 +1,4 @@
-namespace Refitter.Tests;
+namespace Refitter.Tests;
public static class TestFile
{
@@ -10,4 +10,4 @@ public static async Task CreateSwaggerFile(string contents, string filen
await File.WriteAllTextAsync(swaggerFile, contents);
return swaggerFile;
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter.Tests/TestUtilities/SwaggerFileHelper.cs b/src/Refitter.Tests/TestUtilities/SwaggerFileHelper.cs
new file mode 100644
index 000000000..6a6d58409
--- /dev/null
+++ b/src/Refitter.Tests/TestUtilities/SwaggerFileHelper.cs
@@ -0,0 +1,25 @@
+using System.IO;
+using System.Threading.Tasks;
+
+namespace Refitter.Tests.TestUtilities;
+
+///
+/// Helper utilities for creating temporary Swagger/OpenAPI files in tests
+///
+public static class SwaggerFileHelper
+{
+ ///
+ /// Creates a temporary YAML file with the specified OpenAPI content
+ ///
+ /// The OpenAPI specification content
+ /// The path to the created temporary file
+ public static async Task CreateSwaggerFile(string contents)
+ {
+ var filename = $"{Guid.NewGuid()}.yml";
+ var folder = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());
+ Directory.CreateDirectory(folder);
+ var swaggerFile = Path.Combine(folder, filename);
+ await File.WriteAllTextAsync(swaggerFile, contents);
+ return swaggerFile;
+ }
+}
\ No newline at end of file
diff --git a/src/Refitter.Tests/XmlDocumentationGeneratorTests.cs b/src/Refitter.Tests/XmlDocumentationGeneratorTests.cs
index 4eb81a688..23e18b4e3 100644
--- a/src/Refitter.Tests/XmlDocumentationGeneratorTests.cs
+++ b/src/Refitter.Tests/XmlDocumentationGeneratorTests.cs
@@ -67,7 +67,8 @@ public void Can_Generate_Method_Remarks()
public void Can_Generate_Method_Param()
{
var docs = new StringBuilder();
- var method = CreateOperationModel(new OpenApiOperation {
+ var method = CreateOperationModel(new OpenApiOperation
+ {
Parameters = { new OpenApiParameter { OriginalName = "testParam", Description = "TestParameter" } },
});
this._generator.AppendMethodDocumentation(method, false, false, false, docs);
@@ -102,7 +103,8 @@ public void Can_Generate_DynamicQuerystring_Param()
public void Can_Generate_Method_Returns()
{
var docs = new StringBuilder();
- var method = CreateOperationModel(new OpenApiOperation {
+ var method = CreateOperationModel(new OpenApiOperation
+ {
Responses =
{
["200"] = new OpenApiResponse
@@ -121,7 +123,8 @@ public void Can_Generate_Method_Returns()
public void Can_Generate_Method_Returns_With_Empty_Result()
{
var docs = new StringBuilder();
- var method = CreateOperationModel(new OpenApiOperation {
+ var method = CreateOperationModel(new OpenApiOperation
+ {
Responses =
{
["200"] = new OpenApiResponse { Content = { [""] = new OpenApiMediaType() } },
@@ -207,4 +210,4 @@ public void Can_Generate_Method_With_IApiResponse()
.And.Contain("400");
}
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter/GenerateCommand.cs b/src/Refitter/GenerateCommand.cs
index d10e7e45e..92529d976 100644
--- a/src/Refitter/GenerateCommand.cs
+++ b/src/Refitter/GenerateCommand.cs
@@ -67,7 +67,7 @@ public override async Task ExecuteAsync(CommandContext context, Settings se
var supportKey = settings.NoLogging
? "Unavailable when logging is disabled"
: SupportInformation.GetSupportKey();
-
+
if (settings.SimpleOutput)
{
Console.WriteLine($"Support key: {supportKey}");
@@ -239,7 +239,7 @@ public override async Task ExecuteAsync(CommandContext context, Settings se
AnsiConsole.WriteLine();
}
}
-
+
if (settings.SimpleOutput)
{
Console.WriteLine("Support");
@@ -413,7 +413,7 @@ private async Task WriteMultipleFiles(
var totalSize = 0L;
var totalLines = 0;
-
+
Table? table = null;
if (settings.SimpleOutput)
diff --git a/src/Refitter/Program.cs b/src/Refitter/Program.cs
index f1e6cbb32..79bdb52a7 100644
--- a/src/Refitter/Program.cs
+++ b/src/Refitter/Program.cs
@@ -1,4 +1,4 @@
-using System.Diagnostics.CodeAnalysis;
+using System.Diagnostics.CodeAnalysis;
using Spectre.Console.Cli;
namespace Refitter;
@@ -134,7 +134,7 @@ private static int Main(string[] args)
"./openapi.json",
"--trim-unused-schema",
" --keep-schema",
- "'^Model$'",
+ "'^Model$'",
"--keep-schema",
"'^Person.+'");
@@ -148,7 +148,7 @@ private static int Main(string[] args)
"--operation-name-template",
"'{operationName}Async'");
- configuration
+ configuration
.AddExample(
"./openapi.json",
"--optional-nullable-parameters");
@@ -167,4 +167,4 @@ private static int Main(string[] args)
return app.Run(args);
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter/Settings.cs b/src/Refitter/Settings.cs
index 9af149b6c..c809d170d 100644
--- a/src/Refitter/Settings.cs
+++ b/src/Refitter/Settings.cs
@@ -40,7 +40,7 @@ public sealed class Settings : CommandSettings
[Description("Don't add header to output file")]
[CommandOption("--no-auto-generated-header")]
[DefaultValue(false)]
- public bool NoAutoGeneratedHeader { get; set; }
+ public bool NoAutoGeneratedHeader { get; set; }
[Description("Don't generate XML doc comments for interfaces and operations")]
[CommandOption("--no-xml-doc-comments")]
diff --git a/src/Refitter/SettingsValidator.cs b/src/Refitter/SettingsValidator.cs
index de723b621..e4232555a 100644
--- a/src/Refitter/SettingsValidator.cs
+++ b/src/Refitter/SettingsValidator.cs
@@ -1,4 +1,4 @@
-using Refitter.Core;
+using Refitter.Core;
using Spectre.Console;
namespace Refitter;
@@ -111,4 +111,4 @@ private static bool IsUrl(string openApiPath)
return Uri.TryCreate(openApiPath, UriKind.Absolute, out var uriResult) &&
(uriResult.Scheme == Uri.UriSchemeHttp || uriResult.Scheme == Uri.UriSchemeHttps);
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter/SupportInformation.cs b/src/Refitter/SupportInformation.cs
index 1a70b8e22..1b56d93b4 100644
--- a/src/Refitter/SupportInformation.cs
+++ b/src/Refitter/SupportInformation.cs
@@ -31,4 +31,4 @@ private static string ToSha256(this string value)
var hash = SHA256.HashData(bytes);
return Convert.ToBase64String(hash).ToLowerInvariant();
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter/SupportKeyInitializer.cs b/src/Refitter/SupportKeyInitializer.cs
index dea24938a..f6539b048 100644
--- a/src/Refitter/SupportKeyInitializer.cs
+++ b/src/Refitter/SupportKeyInitializer.cs
@@ -1,4 +1,4 @@
-using Microsoft.ApplicationInsights.Channel;
+using Microsoft.ApplicationInsights.Channel;
using Microsoft.ApplicationInsights.DataContracts;
using Microsoft.ApplicationInsights.Extensibility;
diff --git a/src/Refitter/Validation/OpenApiStats.cs b/src/Refitter/Validation/OpenApiStats.cs
index 243f70efd..70c33da49 100644
--- a/src/Refitter/Validation/OpenApiStats.cs
+++ b/src/Refitter/Validation/OpenApiStats.cs
@@ -1,4 +1,4 @@
-using Microsoft.OpenApi.Models;
+using Microsoft.OpenApi.Models;
using Microsoft.OpenApi.Services;
namespace Refitter.Validation;
@@ -79,4 +79,4 @@ public override string ToString()
- Schemas: {SchemaCount}
""";
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter/Validation/OpenApiValidationException.cs b/src/Refitter/Validation/OpenApiValidationException.cs
index 65642847b..62d286c3b 100644
--- a/src/Refitter/Validation/OpenApiValidationException.cs
+++ b/src/Refitter/Validation/OpenApiValidationException.cs
@@ -1,13 +1,13 @@
-namespace Refitter.Validation;
+namespace Refitter.Validation;
public class OpenApiValidationException : Exception
{
public OpenApiValidationResult ValidationResult { get; }
public OpenApiValidationException(
- OpenApiValidationResult validationResult)
+ OpenApiValidationResult validationResult)
: base("OpenAPI validation failed")
{
ValidationResult = validationResult;
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter/Validation/OpenApiValidationResult.cs b/src/Refitter/Validation/OpenApiValidationResult.cs
index 1a8c2702e..0de831f3e 100644
--- a/src/Refitter/Validation/OpenApiValidationResult.cs
+++ b/src/Refitter/Validation/OpenApiValidationResult.cs
@@ -1,4 +1,4 @@
-using Microsoft.OpenApi.Readers;
+using Microsoft.OpenApi.Readers;
namespace Refitter.Validation;
@@ -7,10 +7,10 @@ public record OpenApiValidationResult(
OpenApiStats Statistics)
{
public bool IsValid => Diagnostics.Errors.Count == 0;
-
+
public void ThrowIfInvalid()
{
if (!IsValid)
throw new OpenApiValidationException(this);
}
-}
\ No newline at end of file
+}
diff --git a/src/Refitter/Validation/OpenApiValidator.cs b/src/Refitter/Validation/OpenApiValidator.cs
index 9b1029ff0..2172da171 100644
--- a/src/Refitter/Validation/OpenApiValidator.cs
+++ b/src/Refitter/Validation/OpenApiValidator.cs
@@ -1,4 +1,4 @@
-using Microsoft.OpenApi.Readers;
+using Microsoft.OpenApi.Readers;
using Microsoft.OpenApi.Services;
namespace Refitter.Validation;
@@ -17,4 +17,4 @@ public static async Task Validate(string openApiFile)
result.OpenApiDiagnostic,
statsVisitor);
}
-}
\ No newline at end of file
+}