Skip to content

Commit

Permalink
microsoft#2488 - Add using statement for EnumMember attribute
Browse files Browse the repository at this point in the history
  • Loading branch information
davit-asryan-veritas committed Mar 31, 2023
1 parent 9a09218 commit 36878c6
Show file tree
Hide file tree
Showing 2 changed files with 4 additions and 0 deletions.
2 changes: 2 additions & 0 deletions src/Kiota.Builder/Writers/CSharp/CodeEnumWriter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,8 @@ public override void WriteCodeElement(CodeEnum codeElement, LanguageWriter write
ArgumentNullException.ThrowIfNull(writer);
if (!codeElement.Options.Any())
return;
if (codeElement.Options.Any(x => x.IsNameEscaped))
writer.WriteLine($"using System.Runtime.Serialization;");

var codeNamespace = codeElement.Parent as CodeNamespace;
if (codeNamespace != null)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,6 +55,7 @@ public void NamesDiffer_WritesEnumMember()
currentEnum.AddOption(new CodeEnumOption { Name = "InvalidName", SerializationName = "Invalid:Name"});
writer.Write(currentEnum);
var result = tw.ToString();
Assert.Contains($"using System.Runtime.Serialization;", result);
Assert.Contains($"[EnumMember(Value = \"Invalid:Name\")]", result);
}

Expand All @@ -66,6 +67,7 @@ public void NamesDontDiffer_DoesntWriteEnumMember()
currentEnum.AddOption(new CodeEnumOption { Name = "ValidName"});
writer.Write(currentEnum);
var result = tw.ToString();
Assert.DoesNotContain($"using System.Runtime.Serialization;", result);
Assert.DoesNotContain($"\"ValidName\"", result);
}

Expand Down

0 comments on commit 36878c6

Please sign in to comment.