Skip to content

Commit fd853af

Browse files
MaggieKimani1Andrew Omondi
authored andcommitted
chore: create a new collection if tags are null
1 parent 3295eb9 commit fd853af

10 files changed

+16
-4
lines changed

src/Microsoft.OpenApi.OData.Reader/Operation/ComplexPropertyBaseOperationHandler.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
using Microsoft.OpenApi.OData.Common;
1010
using Microsoft.OpenApi.OData.Edm;
1111
using Microsoft.OpenApi.OData.Vocabulary.Core;
12+
using System.Collections.Generic;
1213

1314
namespace Microsoft.OpenApi.OData.Operation;
1415

@@ -35,7 +36,7 @@ protected override void Initialize(ODataContext context, ODataPath path)
3536
protected override void SetTags(OpenApiOperation operation)
3637
{
3738
string tagName = EdmModelHelper.GenerateComplexPropertyPathTagName(Path, Context);
38-
39+
operation.Tags ??= new HashSet<OpenApiTagReference>();
3940
if (!string.IsNullOrEmpty(tagName))
4041
{
4142
Context.AddExtensionToTag(tagName, Constants.xMsTocType, new OpenApiAny("page"), () => new OpenApiTag()

src/Microsoft.OpenApi.OData.Reader/Operation/DollarCountGetOperationHandler.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,8 @@ private void AddODataSegmentToAnnotables(ODataSegment oDataSegment, ODataSegment
8585
protected override void SetTags(OpenApiOperation operation)
8686
{
8787
string tagName = null;
88+
operation.Tags ??= new HashSet<OpenApiTagReference>();
89+
8890
if (SecondLastSegment is ODataNavigationSourceSegment sourceSegment)
8991
{
9092
tagName = TagNameFromNavigationSourceSegment(sourceSegment);

src/Microsoft.OpenApi.OData.Reader/Operation/EdmOperationImportOperationHandler.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,8 @@ protected override void SetTags(OpenApiOperation operation)
141141
var tag = CreateTag(EdmOperationImport);
142142
tag.Extensions.Add(Constants.xMsTocType, new OpenApiAny("container"));
143143
Context.AppendTag(tag);
144+
145+
operation.Tags ??= new HashSet<OpenApiTagReference>();
144146
operation.Tags.Add(new OpenApiTagReference(tag.Name, _document));
145147

146148
base.SetTags(operation);

src/Microsoft.OpenApi.OData.Reader/Operation/EdmOperationOperationHandler.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -154,6 +154,7 @@ protected override void SetTags(OpenApiOperation operation)
154154
Name = tagName,
155155
};
156156
tag.Extensions.Add(Constants.xMsTocType, new OpenApiAny("container"));
157+
operation.Tags ??= new HashSet<OpenApiTagReference>();
157158
operation.Tags.Add(new OpenApiTagReference(tag.Name, _document));
158159

159160
Context.AppendTag(tag);

src/Microsoft.OpenApi.OData.Reader/Operation/EntitySetOperationHandler.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
using Microsoft.OpenApi.OData.Common;
1111
using Microsoft.OpenApi.OData.Edm;
1212
using Microsoft.OpenApi.OData.Vocabulary.Core;
13+
using System.Collections.Generic;
1314

1415
namespace Microsoft.OpenApi.OData.Operation
1516
{
@@ -46,7 +47,7 @@ protected override void Initialize(ODataContext context, ODataPath path)
4647
protected override void SetTags(OpenApiOperation operation)
4748
{
4849
var tagName = EntitySet.Name + "." + EntitySet.EntityType.Name;
49-
50+
operation.Tags ??= new HashSet<OpenApiTagReference>();
5051
operation.Tags.Add(new OpenApiTagReference(tagName, _document));
5152

5253
Context.AddExtensionToTag(tagName, Constants.xMsTocType, new OpenApiAny("page"), () => new OpenApiTag()

src/Microsoft.OpenApi.OData.Reader/Operation/MediaEntityOperationalHandler.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,8 @@ protected override void SetTags(OpenApiOperation operation)
9696
{
9797
Name = tagIdentifier
9898
});
99+
100+
operation.Tags ??= new HashSet<OpenApiTagReference>();
99101
operation.Tags.Add(new OpenApiTagReference(tagIdentifier, _document));
100102
}
101103

src/Microsoft.OpenApi.OData.Reader/Operation/NavigationPropertyOperationHandler.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -99,6 +99,7 @@ protected override void SetTags(OpenApiOperation operation)
9999
{
100100
Name = name
101101
});
102+
operation.Tags ??= new HashSet<OpenApiTagReference>();
102103
operation.Tags.Add(new OpenApiTagReference(name, _document));
103104

104105
base.SetTags(operation);

src/Microsoft.OpenApi.OData.Reader/Operation/ODataTypeCastGetOperationHandler.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -238,6 +238,7 @@ protected override void SetResponses(OpenApiOperation operation)
238238
protected override void SetTags(OpenApiOperation operation)
239239
{
240240
string tagName = null;
241+
operation.Tags ??= new HashSet<OpenApiTagReference>();
241242

242243
if (SecondLastSegment is ODataNavigationPropertySegment || isIndexedCollValuedNavProp)
243244
{

src/Microsoft.OpenApi.OData.Reader/Operation/SingletonOperationHandler.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
using Microsoft.OpenApi.OData.Common;
1111
using Microsoft.OpenApi.OData.Edm;
1212
using Microsoft.OpenApi.OData.Vocabulary.Core;
13+
using System.Collections.Generic;
1314

1415
namespace Microsoft.OpenApi.OData.Operation
1516
{
@@ -53,7 +54,7 @@ protected override void SetTags(OpenApiOperation operation)
5354
{
5455
Name = tagName
5556
});
56-
57+
operation.Tags ??= new HashSet<OpenApiTagReference>();
5758
operation.Tags.Add(new OpenApiTagReference(tagName, _document));
5859

5960
// Call base.SetTags() at the end of this method.

test/Microsoft.OpenAPI.OData.Reader.Tests/Microsoft.OpenAPI.OData.Reader.Tests.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@
8888
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
8989
<PrivateAssets>all</PrivateAssets>
9090
</PackageReference>
91-
<PackageReference Include="Microsoft.OpenApi" Version="2.0.0-preview.13" />
91+
<PackageReference Include="Microsoft.OpenApi" Version="2.0.0-preview.14" />
9292
<PackageReference Include="moq" Version="4.20.72" />
9393
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.13.0" />
9494
<PackageReference Include="xunit" Version="2.9.3" />

0 commit comments

Comments
 (0)