diff --git a/src/GovUk.Education.ExploreEducationStatistics.Admin/GovUk.Education.ExploreEducationStatistics.Admin.csproj b/src/GovUk.Education.ExploreEducationStatistics.Admin/GovUk.Education.ExploreEducationStatistics.Admin.csproj index d50d62766f4..f313a4d75e3 100644 --- a/src/GovUk.Education.ExploreEducationStatistics.Admin/GovUk.Education.ExploreEducationStatistics.Admin.csproj +++ b/src/GovUk.Education.ExploreEducationStatistics.Admin/GovUk.Education.ExploreEducationStatistics.Admin.csproj @@ -43,7 +43,7 @@ - + diff --git a/src/GovUk.Education.ExploreEducationStatistics.Content.Api/GovUk.Education.ExploreEducationStatistics.Content.Api.csproj b/src/GovUk.Education.ExploreEducationStatistics.Content.Api/GovUk.Education.ExploreEducationStatistics.Content.Api.csproj index 56805bc8b70..d09e1a0a872 100644 --- a/src/GovUk.Education.ExploreEducationStatistics.Content.Api/GovUk.Education.ExploreEducationStatistics.Content.Api.csproj +++ b/src/GovUk.Education.ExploreEducationStatistics.Content.Api/GovUk.Education.ExploreEducationStatistics.Content.Api.csproj @@ -20,7 +20,7 @@ - + diff --git a/src/GovUk.Education.ExploreEducationStatistics.Data.Api/GovUk.Education.ExploreEducationStatistics.Data.Api.csproj b/src/GovUk.Education.ExploreEducationStatistics.Data.Api/GovUk.Education.ExploreEducationStatistics.Data.Api.csproj index de1c1f03d39..845674480cc 100644 --- a/src/GovUk.Education.ExploreEducationStatistics.Data.Api/GovUk.Education.ExploreEducationStatistics.Data.Api.csproj +++ b/src/GovUk.Education.ExploreEducationStatistics.Data.Api/GovUk.Education.ExploreEducationStatistics.Data.Api.csproj @@ -1,4 +1,4 @@ - + net8.0 @@ -24,7 +24,7 @@ - + diff --git a/src/GovUk.Education.ExploreEducationStatistics.Public.Data.Api.Tests/Swagger/RequiredPropertySchemaFilterTests.cs b/src/GovUk.Education.ExploreEducationStatistics.Public.Data.Api.Tests/Swagger/RequiredPropertySchemaFilterTests.cs index 0527973ef2c..6d7d48862ab 100644 --- a/src/GovUk.Education.ExploreEducationStatistics.Public.Data.Api.Tests/Swagger/RequiredPropertySchemaFilterTests.cs +++ b/src/GovUk.Education.ExploreEducationStatistics.Public.Data.Api.Tests/Swagger/RequiredPropertySchemaFilterTests.cs @@ -15,6 +15,7 @@ public class RequiredPropertySchemaFilterTests { UseAllOfToExtendReferenceSchemas = true, SchemaFilters = [new RequiredPropertySchemaFilter()], + SupportNonNullableReferenceTypes = true }, new JsonSerializerDataContractResolver(new JsonSerializerOptions { @@ -45,12 +46,22 @@ public void SomeRequiredPropertiesMarkedAsRequired() } [Fact] - public void RequiredNonNullableReferenceTypeMarkedAsRequired() + public void RequiredReferenceTypePropertiesMarkedAsRequired() { var schema = GenerateSchema(); - Assert.Single(schema.Required); + Assert.Equal(2, schema.Required.Count); Assert.Contains(nameof(TestClassReferenceTypes.RequiredNonNullable).ToLowerFirst(), schema.Required); + Assert.Contains(nameof(TestClassReferenceTypes.RequiredNullable).ToLowerFirst(), schema.Required); + } + + [Fact] + public void RequiredNullableReferenceTypeMarkedAsNullable() + { + var schema = GenerateSchema(); + + Assert.True(schema.Properties[nameof(TestClassReferenceTypes.RequiredNullable).ToLowerFirst()].Nullable); + Assert.False(schema.Properties[nameof(TestClassReferenceTypes.RequiredNonNullable).ToLowerFirst()].Nullable); } [Fact] diff --git a/src/GovUk.Education.ExploreEducationStatistics.Public.Data.Api/GovUk.Education.ExploreEducationStatistics.Public.Data.Api.csproj b/src/GovUk.Education.ExploreEducationStatistics.Public.Data.Api/GovUk.Education.ExploreEducationStatistics.Public.Data.Api.csproj index c4cccd3bac2..f89f53c3ada 100644 --- a/src/GovUk.Education.ExploreEducationStatistics.Public.Data.Api/GovUk.Education.ExploreEducationStatistics.Public.Data.Api.csproj +++ b/src/GovUk.Education.ExploreEducationStatistics.Public.Data.Api/GovUk.Education.ExploreEducationStatistics.Public.Data.Api.csproj @@ -1,4 +1,4 @@ - + net8.0 @@ -39,8 +39,8 @@ - - + +