From 90ced5113f4f186b4519d5c68c3d56c3583183bf Mon Sep 17 00:00:00 2001 From: devhl Date: Sun, 2 Aug 2026 20:45:03 -0400 Subject: [PATCH] give clients a way to inject vendor overrides --- bin/configs/csharp-generichost-net10.yaml | 4 + .../openapitools/codegen/cmd/Generate.java | 10 + .../codegen/config/GeneratorSettings.java | 43 +++ .../openapitools/codegen/CodegenConfig.java | 2 + .../openapitools/codegen/DefaultCodegen.java | 43 +++ .../codegen/config/CodegenConfigurator.java | 17 + .../config/CodegenConfiguratorUtils.java | 13 + .../languages/AbstractCSharpCodegen.java | 13 + .../generichost/modelGeneric.mustache | 18 +- ...odels-for-testing-with-http-signature.yaml | 15 + .../.openapi-generator/FILES | 2 + .../latest/UseDateTimeOffset/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 265 ++++++++++++++ .../net10/FormModels/.openapi-generator/FILES | 2 + .../net10/FormModels/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../.openapi-generator/FILES | 2 + .../net10/NullReferenceTypes/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 320 +++++++++++++++++ .../net10/Petstore/.openapi-generator/FILES | 2 + .../net10/Petstore/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../SourceGeneration/.openapi-generator/FILES | 2 + .../net10/SourceGeneration/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 2 + .../Model/InjectedVendorExtensionsTest.cs | 328 ++++++++++++++++++ .../FormModels/.openapi-generator/FILES | 2 + .../net4.7/FormModels/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../net4.7/Petstore/.openapi-generator/FILES | 2 + .../net4.7/Petstore/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../FormModels/.openapi-generator/FILES | 2 + .../net4.8/FormModels/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../net4.8/Petstore/.openapi-generator/FILES | 2 + .../net4.8/Petstore/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../net8/FormModels/.openapi-generator/FILES | 2 + .../net8/FormModels/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../.openapi-generator/FILES | 2 + .../net8/NullReferenceTypes/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 320 +++++++++++++++++ .../net8/Petstore/.openapi-generator/FILES | 2 + .../net8/Petstore/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../SourceGeneration/.openapi-generator/FILES | 2 + .../net8/SourceGeneration/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 2 + .../Model/InjectedVendorExtensionsTest.cs | 328 ++++++++++++++++++ .../net9/FormModels/.openapi-generator/FILES | 2 + .../net9/FormModels/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../.openapi-generator/FILES | 2 + .../net9/NullReferenceTypes/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 320 +++++++++++++++++ .../net9/Petstore/.openapi-generator/FILES | 2 + .../net9/Petstore/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../SourceGeneration/.openapi-generator/FILES | 2 + .../net9/SourceGeneration/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 2 + .../Model/InjectedVendorExtensionsTest.cs | 328 ++++++++++++++++++ .../Petstore/.openapi-generator/FILES | 2 + .../standard2.0/Petstore/api/openapi.yaml | 15 + .../models/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 92 +++++ .../Client/HostConfiguration.cs | 1 + .../Model/InjectedVendorExtensionsTest.cs | 318 +++++++++++++++++ .../net10/Petstore/.openapi-generator/FILES | 2 + .../httpclient/net10/Petstore/README.md | 1 + .../net10/Petstore/api/openapi.yaml | 15 + .../docs/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 93 +++++ .../Model/InjectedVendorExtensionsTest.cs | 197 +++++++++++ .../net9/Petstore/.openapi-generator/FILES | 2 + .../csharp/httpclient/net9/Petstore/README.md | 1 + .../httpclient/net9/Petstore/api/openapi.yaml | 15 + .../docs/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 93 +++++ .../Model/InjectedVendorExtensionsTest.cs | 197 +++++++++++ .../Petstore/.openapi-generator/FILES | 2 + .../httpclient/standard2.0/Petstore/README.md | 1 + .../standard2.0/Petstore/api/openapi.yaml | 15 + .../docs/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 93 +++++ .../Model/InjectedVendorExtensionsTest.cs | 197 +++++++++++ .../net8/Petstore/.openapi-generator/FILES | 2 + .../csharp/restsharp/net8/Petstore/README.md | 1 + .../restsharp/net8/Petstore/api/openapi.yaml | 15 + .../docs/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 93 +++++ .../Model/InjectedVendorExtensionsTest.cs | 184 ++++++++++ .../.openapi-generator/FILES | 2 + .../ConditionalSerialization/README.md | 1 + .../ConditionalSerialization/api/openapi.yaml | 15 + .../docs/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 93 +++++ .../Model/InjectedVendorExtensionsTest.cs | 196 +++++++++++ .../net10/Petstore/.openapi-generator/FILES | 2 + .../unityWebRequest/net10/Petstore/README.md | 1 + .../net10/Petstore/api/openapi.yaml | 15 + .../docs/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 90 +++++ .../Model/InjectedVendorExtensionsTest.cs | 197 +++++++++++ .../net9/Petstore/.openapi-generator/FILES | 2 + .../unityWebRequest/net9/Petstore/README.md | 1 + .../net9/Petstore/api/openapi.yaml | 15 + .../docs/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 90 +++++ .../Model/InjectedVendorExtensionsTest.cs | 197 +++++++++++ .../Petstore/.openapi-generator/FILES | 2 + .../standard2.0/Petstore/README.md | 1 + .../standard2.0/Petstore/api/openapi.yaml | 15 + .../docs/InjectedVendorExtensionsTest.md | 13 + .../InjectedVendorExtensionsTestTests.cs | 90 +++++ .../Model/InjectedVendorExtensionsTest.cs | 197 +++++++++++ 166 files changed, 10638 insertions(+), 9 deletions(-) create mode 100644 samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net10/FormModels/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net10/Petstore/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net10/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/httpclient/net10/Petstore/docs/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/httpclient/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/httpclient/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/docs/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/docs/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/net10/Petstore/docs/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/unityWebRequest/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/InjectedVendorExtensionsTest.md create mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs create mode 100644 samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs diff --git a/bin/configs/csharp-generichost-net10.yaml b/bin/configs/csharp-generichost-net10.yaml index fcf8ca343808..32541048e59b 100644 --- a/bin/configs/csharp-generichost-net10.yaml +++ b/bin/configs/csharp-generichost-net10.yaml @@ -14,3 +14,7 @@ additionalProperties: operationParameterSorting: alphabetical treatWarningsAsErrors: true warningsNotAsErrors: CS0612 +injectModelVendorExtensions: + InjectedVendorExtensionsTest.potentiallyOverriddenPropertyToPrivate.x-setter-visibility: private + InjectedVendorExtensionsTest.potentiallyOverriddenPropertyToInternal.x-setter-visibility: internal + InjectedVendorExtensionsTest.potentiallyOverriddenPropertyToPublic.x-setter-visibility: public diff --git a/modules/openapi-generator-cli/src/main/java/org/openapitools/codegen/cmd/Generate.java b/modules/openapi-generator-cli/src/main/java/org/openapitools/codegen/cmd/Generate.java index 420d557cfdef..d0707f90388b 100644 --- a/modules/openapi-generator-cli/src/main/java/org/openapitools/codegen/cmd/Generate.java +++ b/modules/openapi-generator-cli/src/main/java/org/openapitools/codegen/cmd/Generate.java @@ -259,6 +259,15 @@ public class Generate extends OpenApiGeneratorCommand { + " You can also have multiple occurrences of this option.") private List operationIdNameMappings = new ArrayList<>(); + @Option( + name = {"--inject-model-vendor-extensions"}, + title = "inject model vendor extensions", + description = "injects vendor extensions into model classes or their properties." + + " Class-level format: ModelName.x-extension-name=value." + + " Property-level format: ModelName.propertyBaseName.x-extension-name=value." + + " You can also have multiple occurrences of this option.") + private List injectModelVendorExtensions = new ArrayList<>(); + @Option( name = {"--openapi-normalizer"}, title = "OpenAPI normalizer rules", @@ -606,6 +615,7 @@ public void execute() { applyModelNameMappingsKvpList(modelNameMappings, configurator); applyEnumNameMappingsKvpList(enumNameMappings, configurator); applyOperationIdNameMappingsKvpList(operationIdNameMappings, configurator); + applyInjectModelVendorExtensionsKvpList(injectModelVendorExtensions, configurator); applyOpenapiNormalizerKvpList(openapiNormalizer, configurator); applyTypeMappingsKvpList(typeMappings, configurator); applyAdditionalPropertiesKvpList(additionalProperties, configurator); diff --git a/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/config/GeneratorSettings.java b/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/config/GeneratorSettings.java index 52b03ff06e36..9f18c8b85afb 100644 --- a/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/config/GeneratorSettings.java +++ b/modules/openapi-generator-core/src/main/java/org/openapitools/codegen/config/GeneratorSettings.java @@ -59,6 +59,7 @@ public final class GeneratorSettings implements Serializable { private final Map modelNameMappings; private final Map enumNameMappings; private final Map operationIdNameMappings; + private final Map injectModelVendorExtensions; private final Map openapiNormalizer; private final Set languageSpecificPrimitives; private final Set openapiGeneratorIgnoreList; @@ -327,6 +328,15 @@ public Map getOperationIdNameMappings() { return operationIdNameMappings; } + /** + * Gets inject model vendor extensions. + * + * @return a map of ModelName.x-extension-name or ModelName.propertyBaseName.x-extension-name to extension value + */ + public Map getInjectModelVendorExtensions() { + return injectModelVendorExtensions; + } + /** * Gets OpenAPI normalizer rules * @@ -469,6 +479,7 @@ private GeneratorSettings(Builder builder) { modelNameMappings = Collections.unmodifiableMap(builder.modelNameMappings); enumNameMappings = Collections.unmodifiableMap(builder.enumNameMappings); operationIdNameMappings = Collections.unmodifiableMap(builder.operationIdNameMappings); + injectModelVendorExtensions = Collections.unmodifiableMap(builder.injectModelVendorExtensions); openapiNormalizer = Collections.unmodifiableMap(builder.openapiNormalizer); languageSpecificPrimitives = Collections.unmodifiableSet(builder.languageSpecificPrimitives); openapiGeneratorIgnoreList = Collections.unmodifiableSet(builder.openapiGeneratorIgnoreList); @@ -550,6 +561,7 @@ public GeneratorSettings() { modelNameMappings = Collections.unmodifiableMap(new HashMap<>(0)); enumNameMappings = Collections.unmodifiableMap(new HashMap<>(0)); operationIdNameMappings = Collections.unmodifiableMap(new HashMap<>(0)); + injectModelVendorExtensions = Collections.unmodifiableMap(new HashMap<>(0)); openapiNormalizer = Collections.unmodifiableMap(new HashMap<>(0)); languageSpecificPrimitives = Collections.unmodifiableSet(new HashSet<>(0)); openapiGeneratorIgnoreList = Collections.unmodifiableSet(new HashSet<>(0)); @@ -630,6 +642,9 @@ public static Builder newBuilder(GeneratorSettings copy) { if (copy.getOperationIdNameMappings() != null) { builder.operationIdNameMappings.putAll(copy.getOperationIdNameMappings()); } + if (copy.getInjectModelVendorExtensions() != null) { + builder.injectModelVendorExtensions.putAll(copy.getInjectModelVendorExtensions()); + } if (copy.getOpenapiNormalizer() != null) { builder.openapiNormalizer.putAll(copy.getOpenapiNormalizer()); } @@ -684,6 +699,7 @@ public static final class Builder { private Map modelNameMappings; private Map enumNameMappings; private Map operationIdNameMappings; + private Map injectModelVendorExtensions; private Map openapiNormalizer; private Set languageSpecificPrimitives; private Set openapiGeneratorIgnoreList; @@ -712,6 +728,7 @@ public Builder() { modelNameMappings = new HashMap<>(); enumNameMappings = new HashMap<>(); operationIdNameMappings = new HashMap<>(); + injectModelVendorExtensions = new HashMap<>(); openapiNormalizer = new HashMap<>(); languageSpecificPrimitives = new HashSet<>(); openapiGeneratorIgnoreList = new HashSet<>(); @@ -1193,6 +1210,32 @@ public Builder withOperationIdNameMapping(String key, String value) { return this; } + /** + * Sets the {@code injectModelExtensions} and returns a reference to this Builder so that the methods can be chained together. + * + * @param injectModelExtensions the {@code injectModelExtensions} to set + * @return a reference to this Builder + */ + public Builder withInjectModelVendorExtensions(Map injectModelVendorExtensions) { + this.injectModelVendorExtensions = injectModelVendorExtensions; + return this; + } + + /** + * Sets a single {@code injectModelVendorExtension} and returns a reference to this Builder so that the methods can be chained together. + * + * @param key A key in the format ModelName.x-extension-name or ModelName.propertyBaseName.x-extension-name + * @param value The extension value + * @return a reference to this Builder + */ + public Builder withInjectModelVendorExtension(String key, String value) { + if (this.injectModelVendorExtensions == null) { + this.injectModelVendorExtensions = new HashMap<>(); + } + this.injectModelVendorExtensions.put(key, value); + return this; + } + /** * Sets the {@code openapiNormalizer} and returns a reference to this Builder so that the methods can be chained together. * diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConfig.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConfig.java index bc775c432d7f..5e305231bbca 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConfig.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/CodegenConfig.java @@ -169,6 +169,8 @@ public interface CodegenConfig { Map operationIdNameMapping(); + Map injectModelVendorExtensions(); + Map openapiNormalizer(); Map apiTemplateFiles(); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java index 32f489f3fabd..df076f053f0a 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/DefaultCodegen.java @@ -199,6 +199,8 @@ public class DefaultCodegen implements CodegenConfig { protected Map enumNameMapping = new HashMap<>(); // a map to store the mapping between operation id name and the name provided by the user protected Map operationIdNameMapping = new HashMap<>(); + // a map to inject vendor extensions into model classes or their properties: key=ModelName.x-extension-name or ModelName.propertyBaseName.x-extension-name, value=extensionValue + protected Map injectModelVendorExtensions = new HashMap<>(); // a map to store the rules in OpenAPI Normalizer protected Map openapiNormalizer = new HashMap<>(); @Setter @@ -547,6 +549,42 @@ public Map postProcessAllModels(Map objs) } } + // Inject vendor extensions from --inject-property-extensions into matching schema properties + if (!injectModelVendorExtensions.isEmpty()) { + for (Map.Entry entry : objs.entrySet()) { + CodegenModel model = ModelUtils.getModelByName(entry.getKey(), objs); + if (model == null) continue; + + for (Map.Entry extEntry : injectModelVendorExtensions.entrySet()) { + String[] parts = extEntry.getKey().split("\\.", 3); + if (parts.length < 2) continue; + String modelName = parts[0]; + String extensionValue = extEntry.getValue(); + + if (!modelName.equals(entry.getKey())) continue; + + if (parts.length == 2) { + // class-level extension: ModelName.x-extension-name + model.vendorExtensions.put(parts[1], extensionValue); + } else { + // property-level extension: ModelName.propertyBaseName.x-extension-name + String propertyBaseName = parts[1]; + String extensionName = parts[2]; + List> allPropertyLists = Arrays.asList( + model.vars, model.allVars, model.readWriteVars, model.requiredVars, + model.optionalVars, model.parentVars, model.readOnlyVars, model.nonNullableVars); + for (List properties : allPropertyLists) { + for (CodegenProperty property : properties) { + if (propertyBaseName.equals(property.baseName)) { + property.vendorExtensions.put(extensionName, extensionValue); + } + } + } + } + } + } + } + if (this.useOneOfInterfaces) { // First, add newly created oneOf interfaces for (CodegenModel cm : addOneOfInterfaces) { @@ -1366,6 +1404,11 @@ public Map operationIdNameMapping() { return operationIdNameMapping; } + @Override + public Map injectModelVendorExtensions() { + return injectModelVendorExtensions; + } + @Override public Map openapiNormalizer() { return openapiNormalizer; diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java index 655d54710312..ab15c320b2cd 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfigurator.java @@ -77,6 +77,7 @@ public class CodegenConfigurator { private Map modelNameMappings = new HashMap<>(); private Map enumNameMappings = new HashMap<>(); private Map operationIdNameMappings = new HashMap<>(); + private Map injectModelVendorExtensions = new HashMap<>(); private Map openapiNormalizer = new HashMap<>(); private Set languageSpecificPrimitives = new HashSet<>(); private Set openapiGeneratorIgnoreList = new HashSet<>(); @@ -149,6 +150,9 @@ public static CodegenConfigurator fromFile(String configFile, Module... modules) if (generatorSettings.getOperationIdNameMappings() != null) { configurator.operationIdNameMappings.putAll(generatorSettings.getOperationIdNameMappings()); } + if (generatorSettings.getInjectModelVendorExtensions() != null) { + configurator.injectModelVendorExtensions.putAll(generatorSettings.getInjectModelVendorExtensions()); + } if (generatorSettings.getOpenapiNormalizer() != null) { configurator.openapiNormalizer.putAll(generatorSettings.getOpenapiNormalizer()); } @@ -295,6 +299,18 @@ public CodegenConfigurator addOperationIdNameMapping(String key, String value) { return this; } + public CodegenConfigurator addInjectModelVendorExtension(String key, String value) { + this.injectModelVendorExtensions.put(key, value); + generatorSettingsBuilder.withInjectModelVendorExtension(key, value); + return this; + } + + public CodegenConfigurator setInjectModelVendorExtensions(Map extensions) { + this.injectModelVendorExtensions = extensions; + generatorSettingsBuilder.withInjectModelVendorExtensions(extensions); + return this; + } + public CodegenConfigurator addOpenapiNormalizer(String key, String value) { this.openapiNormalizer.put(key, value); generatorSettingsBuilder.withOpenapiNormalizer(key, value); @@ -815,6 +831,7 @@ public ClientOptInput toClientOptInput() { config.modelNameMapping().putAll(generatorSettings.getModelNameMappings()); config.enumNameMapping().putAll(generatorSettings.getEnumNameMappings()); config.operationIdNameMapping().putAll(generatorSettings.getOperationIdNameMappings()); + config.injectModelVendorExtensions().putAll(generatorSettings.getInjectModelVendorExtensions()); config.openapiNormalizer().putAll(generatorSettings.getOpenapiNormalizer()); config.languageSpecificPrimitives().addAll(generatorSettings.getLanguageSpecificPrimitives()); config.openapiGeneratorIgnoreList().addAll(generatorSettings.getOpenapiGeneratorIgnoreList()); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfiguratorUtils.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfiguratorUtils.java index 3a0391da3adc..eabae28f67b6 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfiguratorUtils.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/config/CodegenConfiguratorUtils.java @@ -204,6 +204,19 @@ public static void applyOpenapiNormalizerKvp(String openapiNormalizer, CodegenCo } } + public static void applyInjectModelVendorExtensionsKvpList(List injectModelVendorExtensions, CodegenConfigurator configurator) { + for (String propString : injectModelVendorExtensions) { + applyInjectModelVendorExtensionsKvp(propString, configurator); + } + } + + public static void applyInjectModelVendorExtensionsKvp(String injectModelVendorExtensions, CodegenConfigurator configurator) { + final Map map = createMapFromKeyValuePairs(injectModelVendorExtensions); + for (Map.Entry entry : map.entrySet()) { + configurator.addInjectModelVendorExtension(entry.getKey().trim(), entry.getValue().trim()); + } + } + public static void applyTypeMappingsKvpList(List typeMappings, CodegenConfigurator configurator) { for (String propString : typeMappings) { applyTypeMappingsKvp(propString, configurator); diff --git a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java index 7c5e9117e36a..269afedcd981 100644 --- a/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java +++ b/modules/openapi-generator/src/main/java/org/openapitools/codegen/languages/AbstractCSharpCodegen.java @@ -883,6 +883,19 @@ protected void patchProperty(Map enumRefs, CodegenModel mo if (property.datatypeWithEnum.equals("decimal")) { property.isDecimal = true; } + + // Normalize x-setter-visibility: + // "public" -> remove extension, set isReadOnly=false (public setter = default, no modifier needed) + // any other value -> set isReadOnly=true (template emits "{{.}} set;" using the extension value) + Object setterVisibilityObj = property.vendorExtensions.get("x-setter-visibility"); + if (setterVisibilityObj instanceof String) { + if ("public".equals(setterVisibilityObj)) { + property.vendorExtensions.remove("x-setter-visibility"); + property.isReadOnly = false; + } else { + property.isReadOnly = true; + } + } } @Override diff --git a/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/modelGeneric.mustache b/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/modelGeneric.mustache index da018d3c7bf2..fb4dfe875313 100644 --- a/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/modelGeneric.mustache +++ b/modules/openapi-generator/src/main/resources/csharp/libraries/generichost/modelGeneric.mustache @@ -115,7 +115,7 @@ /// [JsonIgnore] [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public {{#isNew}}new {{/isNew}}Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}> {{name}}Option { get; {{^isReadOnly}}private set; {{/isReadOnly}}} + public {{#isNew}}new {{/isNew}}Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}> {{name}}Option { get; {{^isReadOnly}}private set; {{/isReadOnly}}{{#isReadOnly}}{{#vendorExtensions.x-setter-visibility}}private set; {{/vendorExtensions.x-setter-visibility}}{{/isReadOnly}}} {{/required}} /// @@ -131,7 +131,7 @@ {{#deprecated}} [Obsolete] {{/deprecated}} - public {{#isNew}}new {{/isNew}}{{{datatypeWithEnum}}}{{#lambda.first}}{{#isNullable}}{{>NullConditionalProperty}} {{/isNullable}}{{^required}}{{nrt?}}{{^nrt}}{{#vendorExtensions.x-is-value-type}}?{{/vendorExtensions.x-is-value-type}}{{/nrt}} {{/required}}{{/lambda.first}} {{name}} {{#required}}{ get; {{^isReadOnly}}set; {{/isReadOnly}}}{{/required}}{{^required}}{ get { return this.{{name}}Option.Value; } {{^isReadOnly}}set { this.{{name}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/isReadOnly}}}{{/required}} + public {{#isNew}}new {{/isNew}}{{{datatypeWithEnum}}}{{#lambda.first}}{{#isNullable}}{{>NullConditionalProperty}} {{/isNullable}}{{^required}}{{nrt?}}{{^nrt}}{{#vendorExtensions.x-is-value-type}}?{{/vendorExtensions.x-is-value-type}}{{/nrt}} {{/required}}{{/lambda.first}} {{name}} {{#required}}{ get; {{^isReadOnly}}set; {{/isReadOnly}}{{#vendorExtensions.x-setter-visibility}}{{.}} set; {{/vendorExtensions.x-setter-visibility}}}{{/required}}{{^required}}{ get { return this.{{name}}Option.Value; } {{^isReadOnly}}set { this.{{name}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/isReadOnly}}{{#vendorExtensions.x-setter-visibility}}{{.}} set { this.{{name}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/vendorExtensions.x-setter-visibility}}}{{/required}} {{/isEnum}} {{/isDiscriminator}} @@ -144,7 +144,7 @@ /// [JsonIgnore] [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public {{#isNew}}new {{/isNew}}Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}> {{#lambda.titlecase}}{{name}}{{/lambda.titlecase}}Option { get; {{^isReadOnly}}private set; {{/isReadOnly}}} + public {{#isNew}}new {{/isNew}}Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}> {{#lambda.titlecase}}{{name}}{{/lambda.titlecase}}Option { get; {{^isReadOnly}}private set; {{/isReadOnly}}{{#isReadOnly}}{{#vendorExtensions.x-setter-visibility}}private set; {{/vendorExtensions.x-setter-visibility}}{{/isReadOnly}}} {{/required}} /// @@ -157,7 +157,7 @@ {{#deprecated}} [Obsolete] {{/deprecated}} - public {{{datatypeWithEnum}}}{{#lambda.first}}{{#isNullable}}{{>NullConditionalProperty}} {{/isNullable}}{{^required}}{{nrt?}}{{^nrt}}{{#vendorExtensions.x-is-value-type}}?{{/vendorExtensions.x-is-value-type}}{{/nrt}} {{/required}}{{/lambda.first}} {{#lambda.titlecase}}{{baseType}}{{/lambda.titlecase}} {{#required}}{ get; {{^isReadOnly}}set; {{/isReadOnly}}}{{/required}}{{^required}}{ get { return this.{{#lambda.titlecase}}{{name}}{{/lambda.titlecase}}Option.Value; } {{^isReadOnly}}set { this.{{#lambda.titlecase}}{{name}}{{/lambda.titlecase}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/isReadOnly}}}{{/required}} + public {{{datatypeWithEnum}}}{{#lambda.first}}{{#isNullable}}{{>NullConditionalProperty}} {{/isNullable}}{{^required}}{{nrt?}}{{^nrt}}{{#vendorExtensions.x-is-value-type}}?{{/vendorExtensions.x-is-value-type}}{{/nrt}} {{/required}}{{/lambda.first}} {{#lambda.titlecase}}{{baseType}}{{/lambda.titlecase}} {{#required}}{ get; {{^isReadOnly}}set; {{/isReadOnly}}{{#vendorExtensions.x-setter-visibility}}{{.}} set; {{/vendorExtensions.x-setter-visibility}}}{{/required}}{{^required}}{ get { return this.{{#lambda.titlecase}}{{name}}{{/lambda.titlecase}}Option.Value; } {{^isReadOnly}}set { this.{{#lambda.titlecase}}{{name}}{{/lambda.titlecase}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/isReadOnly}}{{#vendorExtensions.x-setter-visibility}}{{.}} set { this.{{#lambda.titlecase}}{{name}}{{/lambda.titlecase}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/vendorExtensions.x-setter-visibility}}}{{/required}} {{/vendorExtensions.x-duplicated-data-type}} {{/composedSchemas.anyOf}} @@ -173,7 +173,7 @@ {{#deprecated}} [Obsolete] {{/deprecated}} - public {{{dataType}}}{{>NullConditionalProperty}} {{#lambda.titlecase}}{{name}}{{/lambda.titlecase}} { get; {{^isReadOnly}}set; {{/isReadOnly}}} + public {{{dataType}}}{{>NullConditionalProperty}} {{#lambda.titlecase}}{{name}}{{/lambda.titlecase}} { get; {{^isReadOnly}}set; {{/isReadOnly}}{{#vendorExtensions.x-setter-visibility}}{{.}} set; {{/vendorExtensions.x-setter-visibility}}} {{/vendorExtensions.x-duplicated-data-type}} {{/composedSchemas.oneOf}} @@ -201,7 +201,7 @@ /// [JsonIgnore] [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public new Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}> {{name}}Option { get; {{^isReadOnly}}private set; {{/isReadOnly}}} + public new Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}> {{name}}Option { get; {{^isReadOnly}}private set; {{/isReadOnly}}{{#isReadOnly}}{{#vendorExtensions.x-setter-visibility}}private set; {{/vendorExtensions.x-setter-visibility}}{{/isReadOnly}}} {{/required}} /// @@ -215,7 +215,7 @@ {{#deprecated}} [Obsolete] {{/deprecated}} - public new {{{datatypeWithEnum}}}{{#lambda.first}}{{#isNullable}}{{>NullConditionalProperty}} {{/isNullable}}{{^required}}{{nrt?}}{{^nrt}}{{#vendorExtensions.x-is-value-type}}?{{/vendorExtensions.x-is-value-type}}{{/nrt}} {{/required}}{{/lambda.first}} {{name}} {{#required}}{ get; {{^isReadOnly}}set; {{/isReadOnly}}}{{/required}}{{^required}}{ get { return this.{{name}}Option.Value; } {{^isReadOnly}}set { this.{{name}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/isReadOnly}}}{{/required}} + public new {{{datatypeWithEnum}}}{{#lambda.first}}{{#isNullable}}{{>NullConditionalProperty}} {{/isNullable}}{{^required}}{{nrt?}}{{^nrt}}{{#vendorExtensions.x-is-value-type}}?{{/vendorExtensions.x-is-value-type}}{{/nrt}} {{/required}}{{/lambda.first}} {{name}} {{#required}}{ get; {{^isReadOnly}}set; {{/isReadOnly}}{{#vendorExtensions.x-setter-visibility}}{{.}} set; {{/vendorExtensions.x-setter-visibility}}}{{/required}}{{^required}}{ get { return this.{{name}}Option.Value; } {{^isReadOnly}}set { this.{{name}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/isReadOnly}}{{#vendorExtensions.x-setter-visibility}}{{.}} set { this.{{name}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/vendorExtensions.x-setter-visibility}}}{{/required}} {{/isNew}} {{/isInherited}} @@ -226,7 +226,7 @@ /// [JsonIgnore] [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] - public Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}> {{name}}Option { get; {{^isReadOnly}}private set; {{/isReadOnly}}} + public Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}> {{name}}Option { get; {{^isReadOnly}}private set; {{/isReadOnly}}{{#isReadOnly}}{{#vendorExtensions.x-setter-visibility}}private set; {{/vendorExtensions.x-setter-visibility}}{{/isReadOnly}}} {{/required}} /// @@ -240,7 +240,7 @@ {{#deprecated}} [Obsolete] {{/deprecated}} - public {{{datatypeWithEnum}}}{{#lambda.first}}{{#isNullable}}{{>NullConditionalProperty}} {{/isNullable}}{{^required}}{{nrt?}}{{^nrt}}{{#vendorExtensions.x-is-value-type}}?{{/vendorExtensions.x-is-value-type}}{{/nrt}} {{/required}}{{/lambda.first}} {{name}} {{#required}}{ get; {{^isReadOnly}}set; {{/isReadOnly}}}{{/required}}{{^required}}{ get { return this.{{name}}Option.Value; } {{^isReadOnly}}set { this.{{name}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/isReadOnly}}}{{/required}} + public {{{datatypeWithEnum}}}{{#lambda.first}}{{#isNullable}}{{>NullConditionalProperty}} {{/isNullable}}{{^required}}{{nrt?}}{{^nrt}}{{#vendorExtensions.x-is-value-type}}?{{/vendorExtensions.x-is-value-type}}{{/nrt}} {{/required}}{{/lambda.first}} {{name}} {{#required}}{ get; {{^isReadOnly}}set; {{/isReadOnly}}{{#vendorExtensions.x-setter-visibility}}{{.}} set; {{/vendorExtensions.x-setter-visibility}}}{{/required}}{{^required}}{ get { return this.{{name}}Option.Value; } {{^isReadOnly}}set { this.{{name}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/isReadOnly}}{{#vendorExtensions.x-setter-visibility}}{{.}} set { this.{{name}}Option = new{{^net70OrLater}} Option<{{{datatypeWithEnum}}}{{>NullConditionalProperty}}>{{/net70OrLater}}(value); } {{/vendorExtensions.x-setter-visibility}}}{{/required}} {{/isInherited}} {{/isEnum}} diff --git a/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml b/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml index 2abbde0932ad..160222f1398b 100644 --- a/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml +++ b/modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml @@ -1468,6 +1468,21 @@ components: type: array items: $ref: '#/components/schemas/RolesReportsHash' + InjectedVendorExtensionsTest: + type: object + properties: + unalteredProperty: + type: string + readOnly: true + potentiallyOverriddenPropertyToPrivate: + type: string + readOnly: true + potentiallyOverriddenPropertyToInternal: + type: string + readOnly: true + potentiallyOverriddenPropertyToPublic: + type: string + readOnly: true RolesReportsHash: description: Role report Hash type: object diff --git a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/.openapi-generator/FILES index 3a66c0df35db..0698a2042def 100644 --- a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -198,6 +199,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/api/openapi.yaml b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Client/HostConfiguration.cs index a86b16b05f28..ca8d0743deab 100644 --- a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -87,6 +87,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..ad17f29555b7 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/latest/UseDateTimeOffset/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,265 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string? PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string? PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string? PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string? UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()!); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net10/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net10/FormModels/.openapi-generator/FILES index fd2691eb4794..b3b6081185ca 100644 --- a/samples/client/petstore/csharp/generichost/net10/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net10/FormModels/.openapi-generator/FILES @@ -61,6 +61,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -231,6 +232,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net10/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net10/FormModels/api/openapi.yaml index 6dae7b5ccbd3..7ba3a76f8f16 100644 --- a/samples/client/petstore/csharp/generichost/net10/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net10/FormModels/api/openapi.yaml @@ -1324,6 +1324,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net10/FormModels/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net10/FormModels/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/FormModels/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index 5c409ac9f5ba..4ddab463d26a 100644 --- a/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -101,6 +101,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..53cbb5268a33 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/.openapi-generator/FILES index 3a66c0df35db..0698a2042def 100644 --- a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -198,6 +199,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs index a86b16b05f28..ca8d0743deab 100644 --- a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -87,6 +87,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..c533776fdbcc --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,320 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string? PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string? PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string? PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string? UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()!); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net10/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net10/Petstore/.openapi-generator/FILES index 3a66c0df35db..0698a2042def 100644 --- a/samples/client/petstore/csharp/generichost/net10/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net10/Petstore/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -198,6 +199,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net10/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net10/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net10/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net10/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net10/Petstore/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net10/Petstore/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..ffd299f83bb1 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/Petstore/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index d52b54c46d14..178446aee993 100644 --- a/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -85,6 +85,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..43211af228b2 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; private set; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } internal set { this.PotentiallyOverriddenPropertyToInternalOption = new(value); } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; private set; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } private set { this.PotentiallyOverriddenPropertyToPrivateOption = new(value); } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; private set; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } set { this.PotentiallyOverriddenPropertyToPublicOption = new(value); } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/.openapi-generator/FILES index 3a66c0df35db..0698a2042def 100644 --- a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -198,6 +199,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs index 568f84bc3540..83ed5bff9f47 100644 --- a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -87,6 +87,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); @@ -201,6 +202,7 @@ public HostConfiguration(IServiceCollection services) new GrandparentAnimalSerializationContext(), new HasOnlyReadOnlySerializationContext(), new HealthCheckResultSerializationContext(), + new InjectedVendorExtensionsTestSerializationContext(), new IsoscelesTriangleSerializationContext(), new ListSerializationContext(), new LiteralStringClassSerializationContext(), diff --git a/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..f5f35a6bebc2 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net10/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,328 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Text.Json.Serialization.Metadata; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string? PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string? PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string? PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string? UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()!); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } + + /// + /// The InjectedVendorExtensionsTestSerializationContext + /// + [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] + [JsonSerializable(typeof(InjectedVendorExtensionsTest))] + public partial class InjectedVendorExtensionsTestSerializationContext : JsonSerializerContext { } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES index a2b6a7db9b46..c9790200e522 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/.openapi-generator/FILES @@ -61,6 +61,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -229,6 +230,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml index 6dae7b5ccbd3..7ba3a76f8f16 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/api/openapi.yaml @@ -1324,6 +1324,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index 64e4c78c8173..50d7edc31f79 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -99,6 +99,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..53cbb5268a33 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES index 20a67a4fabae..d8f84eb7f575 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -196,6 +197,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index ba26668131ce..c87cde5cb400 100644 --- a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -83,6 +83,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..53cbb5268a33 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.7/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES index a2b6a7db9b46..c9790200e522 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/.openapi-generator/FILES @@ -61,6 +61,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -229,6 +230,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml index 6dae7b5ccbd3..7ba3a76f8f16 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/api/openapi.yaml @@ -1324,6 +1324,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index 64e4c78c8173..50d7edc31f79 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -99,6 +99,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..53cbb5268a33 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES index 20a67a4fabae..d8f84eb7f575 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -196,6 +197,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index ba26668131ce..c87cde5cb400 100644 --- a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -83,6 +83,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..53cbb5268a33 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net4.8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES index fd2691eb4794..b3b6081185ca 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/.openapi-generator/FILES @@ -61,6 +61,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -231,6 +232,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml index 6dae7b5ccbd3..7ba3a76f8f16 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/api/openapi.yaml @@ -1324,6 +1324,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index 5c409ac9f5ba..4ddab463d26a 100644 --- a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -101,6 +101,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..53cbb5268a33 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES index 3a66c0df35db..0698a2042def 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -198,6 +199,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs index a86b16b05f28..ca8d0743deab 100644 --- a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -87,6 +87,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..c533776fdbcc --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,320 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string? PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string? PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string? PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string? UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()!); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES index 3a66c0df35db..0698a2042def 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -198,6 +199,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index d52b54c46d14..178446aee993 100644 --- a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -85,6 +85,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..53cbb5268a33 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES index 3a66c0df35db..0698a2042def 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -198,6 +199,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs index 568f84bc3540..83ed5bff9f47 100644 --- a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -87,6 +87,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); @@ -201,6 +202,7 @@ public HostConfiguration(IServiceCollection services) new GrandparentAnimalSerializationContext(), new HasOnlyReadOnlySerializationContext(), new HealthCheckResultSerializationContext(), + new InjectedVendorExtensionsTestSerializationContext(), new IsoscelesTriangleSerializationContext(), new ListSerializationContext(), new LiteralStringClassSerializationContext(), diff --git a/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..f5f35a6bebc2 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net8/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,328 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Text.Json.Serialization.Metadata; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string? PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string? PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string? PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string? UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()!); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } + + /// + /// The InjectedVendorExtensionsTestSerializationContext + /// + [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] + [JsonSerializable(typeof(InjectedVendorExtensionsTest))] + public partial class InjectedVendorExtensionsTestSerializationContext : JsonSerializerContext { } +} diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES index fd2691eb4794..b3b6081185ca 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/.openapi-generator/FILES @@ -61,6 +61,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -231,6 +232,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml index 6dae7b5ccbd3..7ba3a76f8f16 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/api/openapi.yaml @@ -1324,6 +1324,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs index 5c409ac9f5ba..4ddab463d26a 100644 --- a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -101,6 +101,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..53cbb5268a33 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/FormModels/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES index 3a66c0df35db..0698a2042def 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -198,6 +199,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs index a86b16b05f28..ca8d0743deab 100644 --- a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -87,6 +87,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..c533776fdbcc --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/NullReferenceTypes/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,320 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string? PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string? PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string? PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string? UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()!); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES index 3a66c0df35db..0698a2042def 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -198,6 +199,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index d52b54c46d14..178446aee993 100644 --- a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -85,6 +85,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..53cbb5268a33 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES index 3a66c0df35db..0698a2042def 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -198,6 +199,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs index 568f84bc3540..83ed5bff9f47 100644 --- a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -87,6 +87,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); @@ -201,6 +202,7 @@ public HostConfiguration(IServiceCollection services) new GrandparentAnimalSerializationContext(), new HasOnlyReadOnlySerializationContext(), new HealthCheckResultSerializationContext(), + new InjectedVendorExtensionsTestSerializationContext(), new IsoscelesTriangleSerializationContext(), new ListSerializationContext(), new LiteralStringClassSerializationContext(), diff --git a/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..f5f35a6bebc2 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/net9/SourceGeneration/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,328 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +#nullable enable + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using System.Text.Json.Serialization.Metadata; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string? PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string? PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string? PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string? UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest? input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string? localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()!); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()!); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()!); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } + + /// + /// The InjectedVendorExtensionsTestSerializationContext + /// + [JsonSourceGenerationOptions(WriteIndented = true, GenerationMode = JsonSourceGenerationMode.Metadata | JsonSourceGenerationMode.Serialization)] + [JsonSerializable(typeof(InjectedVendorExtensionsTest))] + public partial class InjectedVendorExtensionsTestSerializationContext : JsonSerializerContext { } +} diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES index 20a67a4fabae..d8f84eb7f575 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/.openapi-generator/FILES @@ -53,6 +53,7 @@ docs/models/GmFruit.md docs/models/GrandparentAnimal.md docs/models/HasOnlyReadOnly.md docs/models/HealthCheckResult.md +docs/models/InjectedVendorExtensionsTest.md docs/models/IsoscelesTriangle.md docs/models/List.md docs/models/LiteralStringClass.md @@ -196,6 +197,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..6e5e74e659a5 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/docs/models/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] +**UnalteredProperty** | **string** | | [optional] [readonly] + +[[Back to Model list]](../../README.md#documentation-for-models) [[Back to API list]](../../README.md#documentation-for-api-endpoints) [[Back to README]](../../README.md) + diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..19c09e9df56c --- /dev/null +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,92 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + } +} diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs index ba26668131ce..c87cde5cb400 100644 --- a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Client/HostConfiguration.cs @@ -83,6 +83,7 @@ public HostConfiguration(IServiceCollection services) _jsonOptions.Converters.Add(new GrandparentAnimalJsonConverter()); _jsonOptions.Converters.Add(new HasOnlyReadOnlyJsonConverter()); _jsonOptions.Converters.Add(new HealthCheckResultJsonConverter()); + _jsonOptions.Converters.Add(new InjectedVendorExtensionsTestJsonConverter()); _jsonOptions.Converters.Add(new IsoscelesTriangleJsonConverter()); _jsonOptions.Converters.Add(new ListJsonConverter()); _jsonOptions.Converters.Add(new LiteralStringClassJsonConverter()); diff --git a/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..53cbb5268a33 --- /dev/null +++ b/samples/client/petstore/csharp/generichost/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,318 @@ +// +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Text; +using System.Text.RegularExpressions; +using System.Text.Json; +using System.Text.Json.Serialization; +using System.ComponentModel.DataAnnotations; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; +using Org.OpenAPITools.Client; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + /// potentiallyOverriddenPropertyToInternal + /// potentiallyOverriddenPropertyToPrivate + /// potentiallyOverriddenPropertyToPublic + /// unalteredProperty + [JsonConstructor] + internal InjectedVendorExtensionsTest(Option potentiallyOverriddenPropertyToInternal = default, Option potentiallyOverriddenPropertyToPrivate = default, Option potentiallyOverriddenPropertyToPublic = default, Option unalteredProperty = default) + { + PotentiallyOverriddenPropertyToInternalOption = potentiallyOverriddenPropertyToInternal; + PotentiallyOverriddenPropertyToPrivateOption = potentiallyOverriddenPropertyToPrivate; + PotentiallyOverriddenPropertyToPublicOption = potentiallyOverriddenPropertyToPublic; + UnalteredPropertyOption = unalteredProperty; + OnCreated(); + } + + partial void OnCreated(); + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToInternal + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToInternalOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [JsonPropertyName("potentiallyOverriddenPropertyToInternal")] + public string PotentiallyOverriddenPropertyToInternal { get { return this.PotentiallyOverriddenPropertyToInternalOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPrivate + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPrivateOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPrivate")] + public string PotentiallyOverriddenPropertyToPrivate { get { return this.PotentiallyOverriddenPropertyToPrivateOption.Value; } } + + /// + /// Used to track the state of PotentiallyOverriddenPropertyToPublic + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option PotentiallyOverriddenPropertyToPublicOption { get; } + + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [JsonPropertyName("potentiallyOverriddenPropertyToPublic")] + public string PotentiallyOverriddenPropertyToPublic { get { return this.PotentiallyOverriddenPropertyToPublicOption.Value; } } + + /// + /// Used to track the state of UnalteredProperty + /// + [JsonIgnore] + [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)] + public Option UnalteredPropertyOption { get; } + + /// + /// Gets or Sets UnalteredProperty + /// + [JsonPropertyName("unalteredProperty")] + public string UnalteredProperty { get { return this.UnalteredPropertyOption.Value; } } + + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public Dictionary AdditionalProperties { get; } = new Dictionary(); + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (PotentiallyOverriddenPropertyToInternal != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToInternal.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPrivate != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + + if (PotentiallyOverriddenPropertyToPublic != null) + hashCode = (hashCode * 59) + PotentiallyOverriddenPropertyToPublic.GetHashCode(); + + if (UnalteredProperty != null) + hashCode = (hashCode * 59) + UnalteredProperty.GetHashCode(); + + hashCode = (hashCode * 59) + AdditionalProperties.GetHashCode(); + + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + + /// + /// A Json converter for type + /// + public partial class InjectedVendorExtensionsTestJsonConverter : JsonConverter + { + partial void OnCreated(); + + /// + /// Initializes a new instance of the class. + /// + public InjectedVendorExtensionsTestJsonConverter() + { + OnCreated(); + } + + /// + /// Deserializes json to + /// + /// + /// + /// + /// + /// + public override InjectedVendorExtensionsTest Read(ref Utf8JsonReader utf8JsonReader, Type typeToConvert, JsonSerializerOptions jsonSerializerOptions) + { + int currentDepth = utf8JsonReader.CurrentDepth; + + if (utf8JsonReader.TokenType != JsonTokenType.StartObject && utf8JsonReader.TokenType != JsonTokenType.StartArray) + throw new JsonException(); + + JsonTokenType startingTokenType = utf8JsonReader.TokenType; + + Option potentiallyOverriddenPropertyToInternal = default; + Option potentiallyOverriddenPropertyToPrivate = default; + Option potentiallyOverriddenPropertyToPublic = default; + Option unalteredProperty = default; + + while (utf8JsonReader.Read()) + { + if (startingTokenType == JsonTokenType.StartObject && utf8JsonReader.TokenType == JsonTokenType.EndObject && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (startingTokenType == JsonTokenType.StartArray && utf8JsonReader.TokenType == JsonTokenType.EndArray && currentDepth == utf8JsonReader.CurrentDepth) + break; + + if (utf8JsonReader.TokenType == JsonTokenType.PropertyName && currentDepth == utf8JsonReader.CurrentDepth - 1) + { + string localVarJsonPropertyName = utf8JsonReader.GetString(); + utf8JsonReader.Read(); + + switch (localVarJsonPropertyName) + { + case "potentiallyOverriddenPropertyToInternal": + potentiallyOverriddenPropertyToInternal = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPrivate": + potentiallyOverriddenPropertyToPrivate = new Option(utf8JsonReader.GetString()); + break; + case "potentiallyOverriddenPropertyToPublic": + potentiallyOverriddenPropertyToPublic = new Option(utf8JsonReader.GetString()); + break; + case "unalteredProperty": + unalteredProperty = new Option(utf8JsonReader.GetString()); + break; + default: + break; + } + } + } + + if (potentiallyOverriddenPropertyToInternal.IsSet && potentiallyOverriddenPropertyToInternal.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToInternal), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPrivate.IsSet && potentiallyOverriddenPropertyToPrivate.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPrivate), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (potentiallyOverriddenPropertyToPublic.IsSet && potentiallyOverriddenPropertyToPublic.Value == null) + throw new ArgumentNullException(nameof(potentiallyOverriddenPropertyToPublic), "Property is not nullable for class InjectedVendorExtensionsTest."); + + if (unalteredProperty.IsSet && unalteredProperty.Value == null) + throw new ArgumentNullException(nameof(unalteredProperty), "Property is not nullable for class InjectedVendorExtensionsTest."); + + return new InjectedVendorExtensionsTest(potentiallyOverriddenPropertyToInternal, potentiallyOverriddenPropertyToPrivate, potentiallyOverriddenPropertyToPublic, unalteredProperty); + } + + /// + /// Serializes a + /// + /// + /// + /// + /// + public override void Write(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + writer.WriteStartObject(); + + WriteProperties(writer, injectedVendorExtensionsTest, jsonSerializerOptions); + writer.WriteEndObject(); + } + + /// + /// Serializes the properties of + /// + /// + /// + /// + /// + public void WriteProperties(Utf8JsonWriter writer, InjectedVendorExtensionsTest injectedVendorExtensionsTest, JsonSerializerOptions jsonSerializerOptions) + { + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet && injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet && injectedVendorExtensionsTest.UnalteredProperty == null) + throw new ArgumentNullException(nameof(injectedVendorExtensionsTest.UnalteredProperty), "Property is required for class InjectedVendorExtensionsTest."); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternalOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToInternal", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToInternal); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivateOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPrivate", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPrivate); + + if (injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublicOption.IsSet) + writer.WriteString("potentiallyOverriddenPropertyToPublic", injectedVendorExtensionsTest.PotentiallyOverriddenPropertyToPublic); + + if (injectedVendorExtensionsTest.UnalteredPropertyOption.IsSet) + writer.WriteString("unalteredProperty", injectedVendorExtensionsTest.UnalteredProperty); + } + } +} diff --git a/samples/client/petstore/csharp/httpclient/net10/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/httpclient/net10/Petstore/.openapi-generator/FILES index 5885f8c71756..2bb20f16c20b 100644 --- a/samples/client/petstore/csharp/httpclient/net10/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/httpclient/net10/Petstore/.openapi-generator/FILES @@ -50,6 +50,7 @@ docs/GmFruit.md docs/GrandparentAnimal.md docs/HasOnlyReadOnly.md docs/HealthCheckResult.md +docs/InjectedVendorExtensionsTest.md docs/IsoscelesTriangle.md docs/List.md docs/LiteralStringClass.md @@ -184,6 +185,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/httpclient/net10/Petstore/README.md b/samples/client/petstore/csharp/httpclient/net10/Petstore/README.md index d57e2f6ef0ce..3be2d8c6cc6b 100644 --- a/samples/client/petstore/csharp/httpclient/net10/Petstore/README.md +++ b/samples/client/petstore/csharp/httpclient/net10/Petstore/README.md @@ -239,6 +239,7 @@ Class | Method | HTTP request | Description - [Model.GrandparentAnimal](docs/GrandparentAnimal.md) - [Model.HasOnlyReadOnly](docs/HasOnlyReadOnly.md) - [Model.HealthCheckResult](docs/HealthCheckResult.md) + - [Model.InjectedVendorExtensionsTest](docs/InjectedVendorExtensionsTest.md) - [Model.IsoscelesTriangle](docs/IsoscelesTriangle.md) - [Model.List](docs/List.md) - [Model.LiteralStringClass](docs/LiteralStringClass.md) diff --git a/samples/client/petstore/csharp/httpclient/net10/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/httpclient/net10/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/httpclient/net10/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/httpclient/net10/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/httpclient/net10/Petstore/docs/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/httpclient/net10/Petstore/docs/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..79e5d2bac086 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net10/Petstore/docs/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**UnalteredProperty** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/csharp/httpclient/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/httpclient/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..d63b2955a13d --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,93 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + } +} diff --git a/samples/client/petstore/csharp/httpclient/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/httpclient/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..008ae03ec135 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,197 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using FileParameter = Org.OpenAPITools.Client.FileParameter; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + [DataContract(Name = "InjectedVendorExtensionsTest")] + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + public InjectedVendorExtensionsTest() + { + this.AdditionalProperties = new Dictionary(); + } + + /// + /// Gets or Sets UnalteredProperty + /// + [DataMember(Name = "unalteredProperty", EmitDefaultValue = false)] + public string UnalteredProperty { get; private set; } + + /// + /// Returns false as UnalteredProperty should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializeUnalteredProperty() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPrivate", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPrivate { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPrivate should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPrivate() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [DataMember(Name = "potentiallyOverriddenPropertyToInternal", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToInternal { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToInternal should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToInternal() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPublic", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPublic { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPublic should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPublic() + { + return false; + } + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public IDictionary AdditionalProperties { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.UnalteredProperty != null) + { + hashCode = (hashCode * 59) + this.UnalteredProperty.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPrivate != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToInternal != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToInternal.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPublic != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPublic.GetHashCode(); + } + if (this.AdditionalProperties != null) + { + hashCode = (hashCode * 59) + this.AdditionalProperties.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES index 5885f8c71756..2bb20f16c20b 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/.openapi-generator/FILES @@ -50,6 +50,7 @@ docs/GmFruit.md docs/GrandparentAnimal.md docs/HasOnlyReadOnly.md docs/HealthCheckResult.md +docs/InjectedVendorExtensionsTest.md docs/IsoscelesTriangle.md docs/List.md docs/LiteralStringClass.md @@ -184,6 +185,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md b/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md index d57e2f6ef0ce..3be2d8c6cc6b 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/README.md @@ -239,6 +239,7 @@ Class | Method | HTTP request | Description - [Model.GrandparentAnimal](docs/GrandparentAnimal.md) - [Model.HasOnlyReadOnly](docs/HasOnlyReadOnly.md) - [Model.HealthCheckResult](docs/HealthCheckResult.md) + - [Model.InjectedVendorExtensionsTest](docs/InjectedVendorExtensionsTest.md) - [Model.IsoscelesTriangle](docs/IsoscelesTriangle.md) - [Model.List](docs/List.md) - [Model.LiteralStringClass](docs/LiteralStringClass.md) diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..79e5d2bac086 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/docs/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**UnalteredProperty** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..d63b2955a13d --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,93 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + } +} diff --git a/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..008ae03ec135 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,197 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using FileParameter = Org.OpenAPITools.Client.FileParameter; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + [DataContract(Name = "InjectedVendorExtensionsTest")] + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + public InjectedVendorExtensionsTest() + { + this.AdditionalProperties = new Dictionary(); + } + + /// + /// Gets or Sets UnalteredProperty + /// + [DataMember(Name = "unalteredProperty", EmitDefaultValue = false)] + public string UnalteredProperty { get; private set; } + + /// + /// Returns false as UnalteredProperty should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializeUnalteredProperty() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPrivate", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPrivate { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPrivate should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPrivate() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [DataMember(Name = "potentiallyOverriddenPropertyToInternal", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToInternal { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToInternal should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToInternal() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPublic", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPublic { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPublic should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPublic() + { + return false; + } + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public IDictionary AdditionalProperties { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.UnalteredProperty != null) + { + hashCode = (hashCode * 59) + this.UnalteredProperty.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPrivate != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToInternal != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToInternal.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPublic != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPublic.GetHashCode(); + } + if (this.AdditionalProperties != null) + { + hashCode = (hashCode * 59) + this.AdditionalProperties.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES index 8fc05aa72028..b84ade6b0799 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/.openapi-generator/FILES @@ -50,6 +50,7 @@ docs/GmFruit.md docs/GrandparentAnimal.md docs/HasOnlyReadOnly.md docs/HealthCheckResult.md +docs/InjectedVendorExtensionsTest.md docs/IsoscelesTriangle.md docs/List.md docs/LiteralStringClass.md @@ -183,6 +184,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md index a1e315504587..1f830b5408d7 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/README.md @@ -227,6 +227,7 @@ Class | Method | HTTP request | Description - [Model.GrandparentAnimal](docs/GrandparentAnimal.md) - [Model.HasOnlyReadOnly](docs/HasOnlyReadOnly.md) - [Model.HealthCheckResult](docs/HealthCheckResult.md) + - [Model.InjectedVendorExtensionsTest](docs/InjectedVendorExtensionsTest.md) - [Model.IsoscelesTriangle](docs/IsoscelesTriangle.md) - [Model.List](docs/List.md) - [Model.LiteralStringClass](docs/LiteralStringClass.md) diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..79e5d2bac086 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/docs/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**UnalteredProperty** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..d63b2955a13d --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,93 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + } +} diff --git a/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..008ae03ec135 --- /dev/null +++ b/samples/client/petstore/csharp/httpclient/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,197 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using FileParameter = Org.OpenAPITools.Client.FileParameter; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + [DataContract(Name = "InjectedVendorExtensionsTest")] + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + public InjectedVendorExtensionsTest() + { + this.AdditionalProperties = new Dictionary(); + } + + /// + /// Gets or Sets UnalteredProperty + /// + [DataMember(Name = "unalteredProperty", EmitDefaultValue = false)] + public string UnalteredProperty { get; private set; } + + /// + /// Returns false as UnalteredProperty should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializeUnalteredProperty() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPrivate", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPrivate { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPrivate should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPrivate() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [DataMember(Name = "potentiallyOverriddenPropertyToInternal", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToInternal { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToInternal should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToInternal() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPublic", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPublic { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPublic should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPublic() + { + return false; + } + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public IDictionary AdditionalProperties { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.UnalteredProperty != null) + { + hashCode = (hashCode * 59) + this.UnalteredProperty.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPrivate != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToInternal != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToInternal.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPublic != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPublic.GetHashCode(); + } + if (this.AdditionalProperties != null) + { + hashCode = (hashCode * 59) + this.AdditionalProperties.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES index 0ddde99ff436..6665035ea2e4 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/.openapi-generator/FILES @@ -50,6 +50,7 @@ docs/GmFruit.md docs/GrandparentAnimal.md docs/HasOnlyReadOnly.md docs/HealthCheckResult.md +docs/InjectedVendorExtensionsTest.md docs/IsoscelesTriangle.md docs/List.md docs/LiteralStringClass.md @@ -186,6 +187,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md b/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md index d006dde668c9..518d9ce8c20b 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/README.md @@ -214,6 +214,7 @@ Class | Method | HTTP request | Description - [Model.GrandparentAnimal](docs/GrandparentAnimal.md) - [Model.HasOnlyReadOnly](docs/HasOnlyReadOnly.md) - [Model.HealthCheckResult](docs/HealthCheckResult.md) + - [Model.InjectedVendorExtensionsTest](docs/InjectedVendorExtensionsTest.md) - [Model.IsoscelesTriangle](docs/IsoscelesTriangle.md) - [Model.List](docs/List.md) - [Model.LiteralStringClass](docs/LiteralStringClass.md) diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..79e5d2bac086 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/docs/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**UnalteredProperty** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..d63b2955a13d --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,93 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + } +} diff --git a/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..d8e338f39eb8 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/net8/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,184 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + [DataContract(Name = "InjectedVendorExtensionsTest")] + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + public InjectedVendorExtensionsTest() + { + } + + /// + /// Gets or Sets UnalteredProperty + /// + [DataMember(Name = "unalteredProperty", EmitDefaultValue = false)] + public string UnalteredProperty { get; private set; } + + /// + /// Returns false as UnalteredProperty should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializeUnalteredProperty() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPrivate", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPrivate { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPrivate should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPrivate() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [DataMember(Name = "potentiallyOverriddenPropertyToInternal", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToInternal { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToInternal should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToInternal() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPublic", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPublic { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPublic should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPublic() + { + return false; + } + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.UnalteredProperty != null) + { + hashCode = (hashCode * 59) + this.UnalteredProperty.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPrivate != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToInternal != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToInternal.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPublic != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPublic.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES index 0ddde99ff436..6665035ea2e4 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/.openapi-generator/FILES @@ -50,6 +50,7 @@ docs/GmFruit.md docs/GrandparentAnimal.md docs/HasOnlyReadOnly.md docs/HealthCheckResult.md +docs/InjectedVendorExtensionsTest.md docs/IsoscelesTriangle.md docs/List.md docs/LiteralStringClass.md @@ -186,6 +187,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md index 1c12fa4cbf28..e9a3b3c7e57a 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/README.md @@ -202,6 +202,7 @@ Class | Method | HTTP request | Description - [Model.GrandparentAnimal](docs/GrandparentAnimal.md) - [Model.HasOnlyReadOnly](docs/HasOnlyReadOnly.md) - [Model.HealthCheckResult](docs/HealthCheckResult.md) + - [Model.InjectedVendorExtensionsTest](docs/InjectedVendorExtensionsTest.md) - [Model.IsoscelesTriangle](docs/IsoscelesTriangle.md) - [Model.List](docs/List.md) - [Model.LiteralStringClass](docs/LiteralStringClass.md) diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..79e5d2bac086 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/docs/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**UnalteredProperty** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..d63b2955a13d --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,93 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using Xunit; + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Fact] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Fact] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Fact] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Fact] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + } +} diff --git a/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..ea655f3eb3d5 --- /dev/null +++ b/samples/client/petstore/csharp/restsharp/standard2.0/ConditionalSerialization/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,196 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using System.ComponentModel.DataAnnotations; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; +using OpenAPIClientUtils = Org.OpenAPITools.Client.ClientUtils; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + [DataContract(Name = "InjectedVendorExtensionsTest")] + public partial class InjectedVendorExtensionsTest : IEquatable, IValidatableObject + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + public InjectedVendorExtensionsTest() + { + this.AdditionalProperties = new Dictionary(); + } + + /// + /// Gets or Sets UnalteredProperty + /// + [DataMember(Name = "unalteredProperty", EmitDefaultValue = false)] + public string UnalteredProperty { get; private set; } + + /// + /// Returns false as UnalteredProperty should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializeUnalteredProperty() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPrivate", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPrivate { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPrivate should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPrivate() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [DataMember(Name = "potentiallyOverriddenPropertyToInternal", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToInternal { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToInternal should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToInternal() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPublic", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPublic { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPublic should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPublic() + { + return false; + } + /// + /// Gets or Sets additional properties + /// + [JsonExtensionData] + public IDictionary AdditionalProperties { get; set; } + + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append(" AdditionalProperties: ").Append(AdditionalProperties).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input as InjectedVendorExtensionsTest).AreEqual; + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + return OpenAPIClientUtils.compareLogic.Compare(this, input).AreEqual; + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.UnalteredProperty != null) + { + hashCode = (hashCode * 59) + this.UnalteredProperty.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPrivate != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToInternal != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToInternal.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPublic != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPublic.GetHashCode(); + } + if (this.AdditionalProperties != null) + { + hashCode = (hashCode * 59) + this.AdditionalProperties.GetHashCode(); + } + return hashCode; + } + } + + /// + /// To validate all properties of the instance + /// + /// Validation context + /// Validation Result + IEnumerable IValidatableObject.Validate(ValidationContext validationContext) + { + yield break; + } + } + +} diff --git a/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/.openapi-generator/FILES index f91fdecb6552..f3a442a0024e 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/.openapi-generator/FILES @@ -48,6 +48,7 @@ docs/GmFruit.md docs/GrandparentAnimal.md docs/HasOnlyReadOnly.md docs/HealthCheckResult.md +docs/InjectedVendorExtensionsTest.md docs/IsoscelesTriangle.md docs/List.md docs/LiteralStringClass.md @@ -183,6 +184,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/README.md b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/README.md index 5037335d949e..25104de6ed15 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/README.md +++ b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/README.md @@ -188,6 +188,7 @@ Class | Method | HTTP request | Description - [Model.GrandparentAnimal](GrandparentAnimal.md) - [Model.HasOnlyReadOnly](HasOnlyReadOnly.md) - [Model.HealthCheckResult](HealthCheckResult.md) + - [Model.InjectedVendorExtensionsTest](InjectedVendorExtensionsTest.md) - [Model.IsoscelesTriangle](IsoscelesTriangle.md) - [Model.List](List.md) - [Model.LiteralStringClass](LiteralStringClass.md) diff --git a/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/docs/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/docs/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..79e5d2bac086 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/docs/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**UnalteredProperty** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..8e8b592a4281 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,90 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; +using NUnit.Framework; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Test] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Test] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Test] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Test] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Test] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + } +} diff --git a/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..2c4e1264d3ac --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net10/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,197 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + [DataContract(Name = "InjectedVendorExtensionsTest")] + public partial class InjectedVendorExtensionsTest : IEquatable + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + public InjectedVendorExtensionsTest() + { + } + + /// + /// Gets or Sets UnalteredProperty + /// + [DataMember(Name = "unalteredProperty", EmitDefaultValue = false)] + public string UnalteredProperty { get; private set; } + + /// + /// Returns false as UnalteredProperty should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializeUnalteredProperty() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPrivate", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPrivate { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPrivate should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPrivate() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [DataMember(Name = "potentiallyOverriddenPropertyToInternal", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToInternal { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToInternal should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToInternal() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPublic", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPublic { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPublic should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPublic() + { + return false; + } + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as InjectedVendorExtensionsTest); + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + if (input == null) + { + return false; + } + return + ( + this.UnalteredProperty == input.UnalteredProperty || + (this.UnalteredProperty != null && + this.UnalteredProperty.Equals(input.UnalteredProperty)) + ) && + ( + this.PotentiallyOverriddenPropertyToPrivate == input.PotentiallyOverriddenPropertyToPrivate || + (this.PotentiallyOverriddenPropertyToPrivate != null && + this.PotentiallyOverriddenPropertyToPrivate.Equals(input.PotentiallyOverriddenPropertyToPrivate)) + ) && + ( + this.PotentiallyOverriddenPropertyToInternal == input.PotentiallyOverriddenPropertyToInternal || + (this.PotentiallyOverriddenPropertyToInternal != null && + this.PotentiallyOverriddenPropertyToInternal.Equals(input.PotentiallyOverriddenPropertyToInternal)) + ) && + ( + this.PotentiallyOverriddenPropertyToPublic == input.PotentiallyOverriddenPropertyToPublic || + (this.PotentiallyOverriddenPropertyToPublic != null && + this.PotentiallyOverriddenPropertyToPublic.Equals(input.PotentiallyOverriddenPropertyToPublic)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.UnalteredProperty != null) + { + hashCode = (hashCode * 59) + this.UnalteredProperty.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPrivate != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToInternal != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToInternal.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPublic != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPublic.GetHashCode(); + } + return hashCode; + } + } + + } + +} diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES index f91fdecb6552..f3a442a0024e 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/.openapi-generator/FILES @@ -48,6 +48,7 @@ docs/GmFruit.md docs/GrandparentAnimal.md docs/HasOnlyReadOnly.md docs/HealthCheckResult.md +docs/InjectedVendorExtensionsTest.md docs/IsoscelesTriangle.md docs/List.md docs/LiteralStringClass.md @@ -183,6 +184,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md index 5037335d949e..25104de6ed15 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/README.md @@ -188,6 +188,7 @@ Class | Method | HTTP request | Description - [Model.GrandparentAnimal](GrandparentAnimal.md) - [Model.HasOnlyReadOnly](HasOnlyReadOnly.md) - [Model.HealthCheckResult](HealthCheckResult.md) + - [Model.InjectedVendorExtensionsTest](InjectedVendorExtensionsTest.md) - [Model.IsoscelesTriangle](IsoscelesTriangle.md) - [Model.List](List.md) - [Model.LiteralStringClass](LiteralStringClass.md) diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..79e5d2bac086 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/docs/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**UnalteredProperty** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..8e8b592a4281 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,90 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; +using NUnit.Framework; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Test] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Test] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Test] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Test] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Test] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + } +} diff --git a/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..2c4e1264d3ac --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/net9/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,197 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + [DataContract(Name = "InjectedVendorExtensionsTest")] + public partial class InjectedVendorExtensionsTest : IEquatable + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + public InjectedVendorExtensionsTest() + { + } + + /// + /// Gets or Sets UnalteredProperty + /// + [DataMember(Name = "unalteredProperty", EmitDefaultValue = false)] + public string UnalteredProperty { get; private set; } + + /// + /// Returns false as UnalteredProperty should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializeUnalteredProperty() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPrivate", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPrivate { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPrivate should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPrivate() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [DataMember(Name = "potentiallyOverriddenPropertyToInternal", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToInternal { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToInternal should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToInternal() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPublic", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPublic { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPublic should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPublic() + { + return false; + } + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as InjectedVendorExtensionsTest); + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + if (input == null) + { + return false; + } + return + ( + this.UnalteredProperty == input.UnalteredProperty || + (this.UnalteredProperty != null && + this.UnalteredProperty.Equals(input.UnalteredProperty)) + ) && + ( + this.PotentiallyOverriddenPropertyToPrivate == input.PotentiallyOverriddenPropertyToPrivate || + (this.PotentiallyOverriddenPropertyToPrivate != null && + this.PotentiallyOverriddenPropertyToPrivate.Equals(input.PotentiallyOverriddenPropertyToPrivate)) + ) && + ( + this.PotentiallyOverriddenPropertyToInternal == input.PotentiallyOverriddenPropertyToInternal || + (this.PotentiallyOverriddenPropertyToInternal != null && + this.PotentiallyOverriddenPropertyToInternal.Equals(input.PotentiallyOverriddenPropertyToInternal)) + ) && + ( + this.PotentiallyOverriddenPropertyToPublic == input.PotentiallyOverriddenPropertyToPublic || + (this.PotentiallyOverriddenPropertyToPublic != null && + this.PotentiallyOverriddenPropertyToPublic.Equals(input.PotentiallyOverriddenPropertyToPublic)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.UnalteredProperty != null) + { + hashCode = (hashCode * 59) + this.UnalteredProperty.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPrivate != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToInternal != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToInternal.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPublic != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPublic.GetHashCode(); + } + return hashCode; + } + } + + } + +} diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES index f91fdecb6552..f3a442a0024e 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/.openapi-generator/FILES @@ -48,6 +48,7 @@ docs/GmFruit.md docs/GrandparentAnimal.md docs/HasOnlyReadOnly.md docs/HealthCheckResult.md +docs/InjectedVendorExtensionsTest.md docs/IsoscelesTriangle.md docs/List.md docs/LiteralStringClass.md @@ -183,6 +184,7 @@ src/Org.OpenAPITools/Model/GmFruit.cs src/Org.OpenAPITools/Model/GrandparentAnimal.cs src/Org.OpenAPITools/Model/HasOnlyReadOnly.cs src/Org.OpenAPITools/Model/HealthCheckResult.cs +src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs src/Org.OpenAPITools/Model/IsoscelesTriangle.cs src/Org.OpenAPITools/Model/List.cs src/Org.OpenAPITools/Model/LiteralStringClass.cs diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md index 5037335d949e..25104de6ed15 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/README.md @@ -188,6 +188,7 @@ Class | Method | HTTP request | Description - [Model.GrandparentAnimal](GrandparentAnimal.md) - [Model.HasOnlyReadOnly](HasOnlyReadOnly.md) - [Model.HealthCheckResult](HealthCheckResult.md) + - [Model.InjectedVendorExtensionsTest](InjectedVendorExtensionsTest.md) - [Model.IsoscelesTriangle](IsoscelesTriangle.md) - [Model.List](List.md) - [Model.LiteralStringClass](LiteralStringClass.md) diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml index a179b6cfdd29..586178fe4189 100644 --- a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/api/openapi.yaml @@ -1355,6 +1355,21 @@ components: items: $ref: "#/components/schemas/RolesReportsHash" type: array + InjectedVendorExtensionsTest: + properties: + unalteredProperty: + readOnly: true + type: string + potentiallyOverriddenPropertyToPrivate: + readOnly: true + type: string + potentiallyOverriddenPropertyToInternal: + readOnly: true + type: string + potentiallyOverriddenPropertyToPublic: + readOnly: true + type: string + type: object RolesReportsHash: description: Role report Hash example: diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/InjectedVendorExtensionsTest.md b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/InjectedVendorExtensionsTest.md new file mode 100644 index 000000000000..79e5d2bac086 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/docs/InjectedVendorExtensionsTest.md @@ -0,0 +1,13 @@ +# Org.OpenAPITools.Model.InjectedVendorExtensionsTest + +## Properties + +Name | Type | Description | Notes +------------ | ------------- | ------------- | ------------- +**UnalteredProperty** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPrivate** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToInternal** | **string** | | [optional] [readonly] +**PotentiallyOverriddenPropertyToPublic** | **string** | | [optional] [readonly] + +[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md) + diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs new file mode 100644 index 000000000000..8e8b592a4281 --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools.Test/Model/InjectedVendorExtensionsTestTests.cs @@ -0,0 +1,90 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Linq; +using System.IO; +using System.Collections.Generic; +using Org.OpenAPITools.Api; +using Org.OpenAPITools.Model; +using Org.OpenAPITools.Client; +using System.Reflection; +using Newtonsoft.Json; +using NUnit.Framework; + +namespace Org.OpenAPITools.Test.Model +{ + /// + /// Class for testing InjectedVendorExtensionsTest + /// + /// + /// This file is automatically generated by OpenAPI Generator (https://openapi-generator.tech). + /// Please update the test case below to test the model. + /// + public class InjectedVendorExtensionsTestTests : IDisposable + { + // TODO uncomment below to declare an instance variable for InjectedVendorExtensionsTest + //private InjectedVendorExtensionsTest instance; + + public InjectedVendorExtensionsTestTests() + { + // TODO uncomment below to create an instance of InjectedVendorExtensionsTest + //instance = new InjectedVendorExtensionsTest(); + } + + public void Dispose() + { + // Cleanup when everything is done. + } + + /// + /// Test an instance of InjectedVendorExtensionsTest + /// + [Test] + public void InjectedVendorExtensionsTestInstanceTest() + { + // TODO uncomment below to test "IsType" InjectedVendorExtensionsTest + //Assert.IsType(instance); + } + + /// + /// Test the property 'UnalteredProperty' + /// + [Test] + public void UnalteredPropertyTest() + { + // TODO unit test for the property 'UnalteredProperty' + } + /// + /// Test the property 'PotentiallyOverriddenPropertyToPrivate' + /// + [Test] + public void PotentiallyOverriddenPropertyToPrivateTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPrivate' + } + /// + /// Test the property 'PotentiallyOverriddenPropertyToInternal' + /// + [Test] + public void PotentiallyOverriddenPropertyToInternalTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToInternal' + } + /// + /// Test the property 'PotentiallyOverriddenPropertyToPublic' + /// + [Test] + public void PotentiallyOverriddenPropertyToPublicTest() + { + // TODO unit test for the property 'PotentiallyOverriddenPropertyToPublic' + } + } +} diff --git a/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs new file mode 100644 index 000000000000..2c4e1264d3ac --- /dev/null +++ b/samples/client/petstore/csharp/unityWebRequest/standard2.0/Petstore/src/Org.OpenAPITools/Model/InjectedVendorExtensionsTest.cs @@ -0,0 +1,197 @@ +/* + * OpenAPI Petstore + * + * This spec is mainly for testing Petstore server and contains fake endpoints, models. Please do not use this for any other purpose. Special characters: \" \\ + * + * The version of the OpenAPI document: 1.0.0 + * Generated by: https://github.com/openapitools/openapi-generator.git + */ + + +using System; +using System.Collections; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.IO; +using System.Runtime.Serialization; +using System.Text; +using System.Text.RegularExpressions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using Newtonsoft.Json.Linq; +using OpenAPIDateConverter = Org.OpenAPITools.Client.OpenAPIDateConverter; + +namespace Org.OpenAPITools.Model +{ + /// + /// InjectedVendorExtensionsTest + /// + [DataContract(Name = "InjectedVendorExtensionsTest")] + public partial class InjectedVendorExtensionsTest : IEquatable + { + /// + /// Initializes a new instance of the class. + /// + [JsonConstructorAttribute] + public InjectedVendorExtensionsTest() + { + } + + /// + /// Gets or Sets UnalteredProperty + /// + [DataMember(Name = "unalteredProperty", EmitDefaultValue = false)] + public string UnalteredProperty { get; private set; } + + /// + /// Returns false as UnalteredProperty should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializeUnalteredProperty() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPrivate + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPrivate", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPrivate { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPrivate should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPrivate() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToInternal + /// + [DataMember(Name = "potentiallyOverriddenPropertyToInternal", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToInternal { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToInternal should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToInternal() + { + return false; + } + /// + /// Gets or Sets PotentiallyOverriddenPropertyToPublic + /// + [DataMember(Name = "potentiallyOverriddenPropertyToPublic", EmitDefaultValue = false)] + public string PotentiallyOverriddenPropertyToPublic { get; private set; } + + /// + /// Returns false as PotentiallyOverriddenPropertyToPublic should not be serialized given that it's read-only. + /// + /// false (boolean) + public bool ShouldSerializePotentiallyOverriddenPropertyToPublic() + { + return false; + } + /// + /// Returns the string presentation of the object + /// + /// String presentation of the object + public override string ToString() + { + StringBuilder sb = new StringBuilder(); + sb.Append("class InjectedVendorExtensionsTest {\n"); + sb.Append(" UnalteredProperty: ").Append(UnalteredProperty).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPrivate: ").Append(PotentiallyOverriddenPropertyToPrivate).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToInternal: ").Append(PotentiallyOverriddenPropertyToInternal).Append("\n"); + sb.Append(" PotentiallyOverriddenPropertyToPublic: ").Append(PotentiallyOverriddenPropertyToPublic).Append("\n"); + sb.Append("}\n"); + return sb.ToString(); + } + + /// + /// Returns the JSON string presentation of the object + /// + /// JSON string presentation of the object + public virtual string ToJson() + { + return Newtonsoft.Json.JsonConvert.SerializeObject(this, Newtonsoft.Json.Formatting.Indented); + } + + /// + /// Returns true if objects are equal + /// + /// Object to be compared + /// Boolean + public override bool Equals(object input) + { + return this.Equals(input as InjectedVendorExtensionsTest); + } + + /// + /// Returns true if InjectedVendorExtensionsTest instances are equal + /// + /// Instance of InjectedVendorExtensionsTest to be compared + /// Boolean + public bool Equals(InjectedVendorExtensionsTest input) + { + if (input == null) + { + return false; + } + return + ( + this.UnalteredProperty == input.UnalteredProperty || + (this.UnalteredProperty != null && + this.UnalteredProperty.Equals(input.UnalteredProperty)) + ) && + ( + this.PotentiallyOverriddenPropertyToPrivate == input.PotentiallyOverriddenPropertyToPrivate || + (this.PotentiallyOverriddenPropertyToPrivate != null && + this.PotentiallyOverriddenPropertyToPrivate.Equals(input.PotentiallyOverriddenPropertyToPrivate)) + ) && + ( + this.PotentiallyOverriddenPropertyToInternal == input.PotentiallyOverriddenPropertyToInternal || + (this.PotentiallyOverriddenPropertyToInternal != null && + this.PotentiallyOverriddenPropertyToInternal.Equals(input.PotentiallyOverriddenPropertyToInternal)) + ) && + ( + this.PotentiallyOverriddenPropertyToPublic == input.PotentiallyOverriddenPropertyToPublic || + (this.PotentiallyOverriddenPropertyToPublic != null && + this.PotentiallyOverriddenPropertyToPublic.Equals(input.PotentiallyOverriddenPropertyToPublic)) + ); + } + + /// + /// Gets the hash code + /// + /// Hash code + public override int GetHashCode() + { + unchecked // Overflow is fine, just wrap + { + int hashCode = 41; + if (this.UnalteredProperty != null) + { + hashCode = (hashCode * 59) + this.UnalteredProperty.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPrivate != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPrivate.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToInternal != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToInternal.GetHashCode(); + } + if (this.PotentiallyOverriddenPropertyToPublic != null) + { + hashCode = (hashCode * 59) + this.PotentiallyOverriddenPropertyToPublic.GetHashCode(); + } + return hashCode; + } + } + + } + +}