diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/src/Providers/ModelReaderWriterContextDefinition.cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/src/Providers/ModelReaderWriterContextDefinition.cs index 6e2a7ad9a51..dfec556761d 100644 --- a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/src/Providers/ModelReaderWriterContextDefinition.cs +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/src/Providers/ModelReaderWriterContextDefinition.cs @@ -49,7 +49,7 @@ protected override IReadOnlyList BuildAttributes() (HashSet buildableTypes, HashSet buildableProviders) = CollectBuildableTypes(); foreach (var type in buildableTypes) { - if (customizedBuildableTypes.Contains(GetTypeIdentity(type))) + if (!type.FrameworkType.IsVisible || customizedBuildableTypes.Contains(GetTypeIdentity(type))) { continue; } @@ -68,7 +68,9 @@ protected override IReadOnlyList BuildAttributes() } foreach (var provider in buildableProviders) { - if (!ShouldWriteProvider(provider) || customizedBuildableTypes.Contains(GetTypeIdentity(provider.Type))) + if (!IsPublicApi(provider) + || !ShouldWriteProvider(provider) + || customizedBuildableTypes.Contains(GetTypeIdentity(provider.Type))) { continue; } @@ -87,6 +89,12 @@ protected override IReadOnlyList BuildAttributes() return attributes.OrderBy(a => GetSimpleTypeName(a.Key)).Select(kvp => kvp.Value).ToList(); } + // protected internal is part of the public API surface, but private protected is not + private static bool IsPublicApi(TypeProvider provider) + => provider.DeclarationModifiers.HasFlag(TypeSignatureModifiers.Public) + || (provider.DeclarationModifiers.HasFlag(TypeSignatureModifiers.Protected) + && !provider.DeclarationModifiers.HasFlag(TypeSignatureModifiers.Private)); + protected override IReadOnlyList BuildAttributesForBackCompatibility(IReadOnlyList originalAttributes) { if (LastContractView?.Attributes is not { Count: > 0 }) diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/ModelReaderWriterContextDefinitionTests.cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/ModelReaderWriterContextDefinitionTests.cs index 83e92558663..8f47a20c273 100644 --- a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/ModelReaderWriterContextDefinitionTests.cs +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/ModelReaderWriterContextDefinitionTests.cs @@ -75,6 +75,69 @@ public void ValidateModelReaderWriterBuildableAttributesAreGenerated() Assert.AreEqual(1, buildableAttributes.Count(), "Exactly one ModelReaderWriterBuildableAttribute should be generated for TestModel"); } + [TestCase("public", 1)] + [TestCase("internal", 0)] + public void BuildableAttributesRespectModelAccessibility(string access, int expectedCount) + { + MockHelpers.LoadMockGenerator( + inputModels: () => [InputFactory.Model("TestModel", access: access)]); + + var contextDefinition = new ModelReaderWriterContextDefinition(); + + Assert.AreEqual(expectedCount, GetBuildableAttributes(contextDefinition).Count); + } + + [Test] + public async Task BuildableAttributesRespectCustomizedAccessibility() + { + await MockHelpers.LoadMockGeneratorAsync( + inputModels: () => + [ + InputFactory.Model("InternalModel"), + InputFactory.Model("PublicModel", access: "internal") + ], + compilation: async () => await Helpers.GetCompilationFromDirectoryAsync()); + + var contextDefinition = new ModelReaderWriterContextDefinition(); + var file = new TypeProviderWriter(contextDefinition).Write(); + + Assert.AreEqual(Helpers.GetExpectedFromFile(), file.Content); + } + + [TestCase(TypeSignatureModifiers.Public, "Public")] + [TestCase(TypeSignatureModifiers.Internal, "Internal")] + [TestCase(TypeSignatureModifiers.Private, "Private")] + [TestCase(TypeSignatureModifiers.Protected, "Protected")] + [TestCase(TypeSignatureModifiers.Protected | TypeSignatureModifiers.Internal, "ProtectedInternal")] + [TestCase(TypeSignatureModifiers.Private | TypeSignatureModifiers.Protected, "PrivateProtected")] + public void BuildableAttributesRespectUpdatedAccessibility(TypeSignatureModifiers accessibility, string expectedFile) + { + var provider = new TestMrwSerialization(implementsPersistableModel: true, includeDepModelProperty: true); + MockHelpers.LoadMockGenerator(createOutputLibrary: () => new TestOutputLibrary([provider])); + + _ = provider.Type; + provider.Update(modifiers: accessibility | TypeSignatureModifiers.Class); + + var contextDefinition = new ModelReaderWriterContextDefinition(); + var file = new TypeProviderWriter(contextDefinition).Write(); + + Assert.AreEqual(Helpers.GetExpectedFromFile(expectedFile), file.Content); + } + + [Test] + public void NonPublicFrameworkTypesDoNotContributeBuildableAttributes() + { + MockHelpers.LoadMockGenerator( + inputModels: () => [InputFactory.Model("PublicModel")], + createCSharpTypeCore: _ => new CSharpType(typeof(TestInternalType)), + createCSharpTypeCoreFallback: input => input == InputPrimitiveType.String); + + var contextDefinition = new ModelReaderWriterContextDefinition(); + var file = new TypeProviderWriter(contextDefinition).Write(); + + Assert.AreEqual(Helpers.GetExpectedFromFile(), file.Content); + } + [TestCase(true)] [TestCase(false)] public void ValidateModelReaderWriterBuildableAttributesAreGeneratedForNonModelsThatImplementMRW(bool implementsIPersistable) @@ -1198,7 +1261,7 @@ BinaryData IPersistableModel.Write(ModelReaderWriterOptions opt } [Experimental("TEST001")] - private class ExperimentalDependencyModel : IJsonModel + public class ExperimentalDependencyModel : IJsonModel { ExperimentalDependencyModel? IJsonModel.Create(ref Utf8JsonReader reader, ModelReaderWriterOptions options) { diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectCustomizedAccessibility.cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectCustomizedAccessibility.cs new file mode 100644 index 00000000000..b9b6bb15d08 --- /dev/null +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectCustomizedAccessibility.cs @@ -0,0 +1,14 @@ +// + +#nullable disable + +using System.ClientModel.Primitives; +using Sample.Models; + +namespace Sample +{ + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Sample.Models.PublicModel))] + public partial class SampleContext : global::System.ClientModel.Primitives.ModelReaderWriterContext + { + } +} diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectCustomizedAccessibility/Models.cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectCustomizedAccessibility/Models.cs new file mode 100644 index 00000000000..6601dfb28cc --- /dev/null +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectCustomizedAccessibility/Models.cs @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. All rights reserved. +// Licensed under the MIT License. + +namespace Sample.Models +{ + internal partial class InternalModel + { + } + + public partial class PublicModel + { + } +} diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Internal).cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Internal).cs new file mode 100644 index 00000000000..18610da3851 --- /dev/null +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Internal).cs @@ -0,0 +1,14 @@ +// + +#nullable disable + +using System.ClientModel.Primitives; +using Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions; + +namespace Sample +{ + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions.ModelReaderWriterContextDefinitionTests.DependencyModel))] + public partial class SampleContext : global::System.ClientModel.Primitives.ModelReaderWriterContext + { + } +} diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Private).cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Private).cs new file mode 100644 index 00000000000..18610da3851 --- /dev/null +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Private).cs @@ -0,0 +1,14 @@ +// + +#nullable disable + +using System.ClientModel.Primitives; +using Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions; + +namespace Sample +{ + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions.ModelReaderWriterContextDefinitionTests.DependencyModel))] + public partial class SampleContext : global::System.ClientModel.Primitives.ModelReaderWriterContext + { + } +} diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(PrivateProtected).cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(PrivateProtected).cs new file mode 100644 index 00000000000..18610da3851 --- /dev/null +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(PrivateProtected).cs @@ -0,0 +1,14 @@ +// + +#nullable disable + +using System.ClientModel.Primitives; +using Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions; + +namespace Sample +{ + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions.ModelReaderWriterContextDefinitionTests.DependencyModel))] + public partial class SampleContext : global::System.ClientModel.Primitives.ModelReaderWriterContext + { + } +} diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Protected).cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Protected).cs new file mode 100644 index 00000000000..b79960b1301 --- /dev/null +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Protected).cs @@ -0,0 +1,15 @@ +// + +#nullable disable + +using System.ClientModel.Primitives; +using Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions; + +namespace Sample +{ + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions.ModelReaderWriterContextDefinitionTests.DependencyModel))] + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Sample.TestMrwSerialization))] + public partial class SampleContext : global::System.ClientModel.Primitives.ModelReaderWriterContext + { + } +} diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(ProtectedInternal).cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(ProtectedInternal).cs new file mode 100644 index 00000000000..b79960b1301 --- /dev/null +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(ProtectedInternal).cs @@ -0,0 +1,15 @@ +// + +#nullable disable + +using System.ClientModel.Primitives; +using Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions; + +namespace Sample +{ + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions.ModelReaderWriterContextDefinitionTests.DependencyModel))] + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Sample.TestMrwSerialization))] + public partial class SampleContext : global::System.ClientModel.Primitives.ModelReaderWriterContext + { + } +} diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Public).cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Public).cs new file mode 100644 index 00000000000..b79960b1301 --- /dev/null +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/BuildableAttributesRespectUpdatedAccessibility(Public).cs @@ -0,0 +1,15 @@ +// + +#nullable disable + +using System.ClientModel.Primitives; +using Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions; + +namespace Sample +{ + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Microsoft.TypeSpec.Generator.ClientModel.Tests.Providers.Definitions.ModelReaderWriterContextDefinitionTests.DependencyModel))] + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Sample.TestMrwSerialization))] + public partial class SampleContext : global::System.ClientModel.Primitives.ModelReaderWriterContext + { + } +} diff --git a/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/NonPublicFrameworkTypesDoNotContributeBuildableAttributes.cs b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/NonPublicFrameworkTypesDoNotContributeBuildableAttributes.cs new file mode 100644 index 00000000000..b9b6bb15d08 --- /dev/null +++ b/packages/http-client-csharp/generator/Microsoft.TypeSpec.Generator.ClientModel/test/Providers/Definitions/TestData/ModelReaderWriterContextDefinitionTests/NonPublicFrameworkTypesDoNotContributeBuildableAttributes.cs @@ -0,0 +1,14 @@ +// + +#nullable disable + +using System.ClientModel.Primitives; +using Sample.Models; + +namespace Sample +{ + [global::System.ClientModel.Primitives.ModelReaderWriterBuildableAttribute(typeof(global::Sample.Models.PublicModel))] + public partial class SampleContext : global::System.ClientModel.Primitives.ModelReaderWriterContext + { + } +} diff --git a/packages/http-client-csharp/generator/TestProjects/Local/Sample-TypeSpec/src/Generated/Models/SampleTypeSpecContext.cs b/packages/http-client-csharp/generator/TestProjects/Local/Sample-TypeSpec/src/Generated/Models/SampleTypeSpecContext.cs index 7cf48210f0d..772b0ecc8f3 100644 --- a/packages/http-client-csharp/generator/TestProjects/Local/Sample-TypeSpec/src/Generated/Models/SampleTypeSpecContext.cs +++ b/packages/http-client-csharp/generator/TestProjects/Local/Sample-TypeSpec/src/Generated/Models/SampleTypeSpecContext.cs @@ -21,14 +21,9 @@ namespace SampleTypeSpec [ModelReaderWriterBuildable(typeof(Friend))] [ModelReaderWriterBuildable(typeof(GetNotebookResult))] [ModelReaderWriterBuildable(typeof(GetWidgetMetricsResult))] - [ModelReaderWriterBuildable(typeof(ListWithContinuationTokenHeaderResponseResult))] - [ModelReaderWriterBuildable(typeof(ListWithContinuationTokenResult))] - [ModelReaderWriterBuildable(typeof(ListWithNextLinkResult))] - [ModelReaderWriterBuildable(typeof(ListWithStringNextLinkResult))] [ModelReaderWriterBuildable(typeof(ModelWithEmbeddedNonBodyParameters))] [ModelReaderWriterBuildable(typeof(ModelWithRequiredNullableProperties))] [ModelReaderWriterBuildable(typeof(NullableDynamicModel))] - [ModelReaderWriterBuildable(typeof(PageThing))] [ModelReaderWriterBuildable(typeof(Pet))] [ModelReaderWriterBuildable(typeof(Plant))] [ModelReaderWriterBuildable(typeof(RenamedModelCustom))] @@ -37,9 +32,6 @@ namespace SampleTypeSpec [ModelReaderWriterBuildable(typeof(StreamingItem))] [ModelReaderWriterBuildable(typeof(Thing))] [ModelReaderWriterBuildable(typeof(Tree))] - [ModelReaderWriterBuildable(typeof(UnknownAnimal))] - [ModelReaderWriterBuildable(typeof(UnknownPet))] - [ModelReaderWriterBuildable(typeof(UnknownPlant))] [ModelReaderWriterBuildable(typeof(Wrapper))] [ModelReaderWriterBuildable(typeof(XmlAdvancedModel))] [ModelReaderWriterBuildable(typeof(XmlItem))] diff --git a/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/enum-discriminator/src/Generated/Models/_TypeModelInheritanceEnumDiscriminatorContext.cs b/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/enum-discriminator/src/Generated/Models/_TypeModelInheritanceEnumDiscriminatorContext.cs index b495b0c63ff..451301276ed 100644 --- a/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/enum-discriminator/src/Generated/Models/_TypeModelInheritanceEnumDiscriminatorContext.cs +++ b/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/enum-discriminator/src/Generated/Models/_TypeModelInheritanceEnumDiscriminatorContext.cs @@ -10,8 +10,6 @@ namespace _Type.Model.Inheritance.EnumDiscriminator [ModelReaderWriterBuildable(typeof(Dog))] [ModelReaderWriterBuildable(typeof(Golden))] [ModelReaderWriterBuildable(typeof(Snake))] - [ModelReaderWriterBuildable(typeof(UnknownDog))] - [ModelReaderWriterBuildable(typeof(UnknownSnake))] public partial class _TypeModelInheritanceEnumDiscriminatorContext : ModelReaderWriterContext { } diff --git a/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/nested-discriminator/src/Generated/Models/_TypeModelInheritanceNestedDiscriminatorContext.cs b/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/nested-discriminator/src/Generated/Models/_TypeModelInheritanceNestedDiscriminatorContext.cs index f81c0d9cc5c..116c20821d6 100644 --- a/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/nested-discriminator/src/Generated/Models/_TypeModelInheritanceNestedDiscriminatorContext.cs +++ b/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/nested-discriminator/src/Generated/Models/_TypeModelInheritanceNestedDiscriminatorContext.cs @@ -11,8 +11,6 @@ namespace _Type.Model.Inheritance.NestedDiscriminator [ModelReaderWriterBuildable(typeof(Salmon))] [ModelReaderWriterBuildable(typeof(SawShark))] [ModelReaderWriterBuildable(typeof(Shark))] - [ModelReaderWriterBuildable(typeof(UnknownFish))] - [ModelReaderWriterBuildable(typeof(UnknownShark))] public partial class _TypeModelInheritanceNestedDiscriminatorContext : ModelReaderWriterContext { } diff --git a/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/single-discriminator/src/Generated/Models/_TypeModelInheritanceSingleDiscriminatorContext.cs b/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/single-discriminator/src/Generated/Models/_TypeModelInheritanceSingleDiscriminatorContext.cs index be4653744b5..d3d4bdbe9f7 100644 --- a/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/single-discriminator/src/Generated/Models/_TypeModelInheritanceSingleDiscriminatorContext.cs +++ b/packages/http-client-csharp/generator/TestProjects/Spector/http/type/model/inheritance/single-discriminator/src/Generated/Models/_TypeModelInheritanceSingleDiscriminatorContext.cs @@ -14,9 +14,6 @@ namespace _Type.Model.Inheritance.SingleDiscriminator [ModelReaderWriterBuildable(typeof(SeaGull))] [ModelReaderWriterBuildable(typeof(Sparrow))] [ModelReaderWriterBuildable(typeof(TRex))] - [ModelReaderWriterBuildable(typeof(UnknownBird))] - [ModelReaderWriterBuildable(typeof(UnknownDinosaur))] - [ModelReaderWriterBuildable(typeof(UnknownFish))] public partial class _TypeModelInheritanceSingleDiscriminatorContext : ModelReaderWriterContext { } diff --git a/packages/http-client-csharp/generator/TestProjects/Spector/http/type/property/additional-properties/src/Generated/Models/_TypePropertyAdditionalPropertiesContext.cs b/packages/http-client-csharp/generator/TestProjects/Spector/http/type/property/additional-properties/src/Generated/Models/_TypePropertyAdditionalPropertiesContext.cs index ad3172fc71e..8ef1daa1d9e 100644 --- a/packages/http-client-csharp/generator/TestProjects/Spector/http/type/property/additional-properties/src/Generated/Models/_TypePropertyAdditionalPropertiesContext.cs +++ b/packages/http-client-csharp/generator/TestProjects/Spector/http/type/property/additional-properties/src/Generated/Models/_TypePropertyAdditionalPropertiesContext.cs @@ -40,8 +40,6 @@ namespace _Type.Property.AdditionalProperties [ModelReaderWriterBuildable(typeof(SpreadRecordForNonDiscriminatedUnion3))] [ModelReaderWriterBuildable(typeof(SpreadRecordForUnion))] [ModelReaderWriterBuildable(typeof(SpreadStringRecord))] - [ModelReaderWriterBuildable(typeof(UnknownExtendsUnknownAdditionalPropertiesDiscriminated))] - [ModelReaderWriterBuildable(typeof(UnknownIsUnknownAdditionalPropertiesDiscriminated))] [ModelReaderWriterBuildable(typeof(WidgetData0))] [ModelReaderWriterBuildable(typeof(WidgetData1))] [ModelReaderWriterBuildable(typeof(WidgetData2))]