Skip to content

Commit 63c91f7

Browse files
authored
Include NullableResponse<T> as an accepted response type (#4512)
* Include NullableResponse<T> as an accepted response type
1 parent 965e7ad commit 63c91f7

File tree

4 files changed

+7
-4
lines changed

4 files changed

+7
-4
lines changed

src/dotnet/Azure.ClientSdk.Analyzers/Azure.ClientSdk.Analyzers.Tests/AZC0015Tests.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,8 @@ await Verifier.CreateAnalyzer(code)
4444
[InlineData("public Response<int> ClientMethodAsync() { return default; }")]
4545
[InlineData("public Response<int[]> ClientMethodAsync() { return default; }")]
4646
[InlineData("public Task<Response<int[]>> ClientMethodAsync() { return default; }")]
47+
[InlineData("public NullableResponse<int[]> ClientMethodAsync() { return default; }")]
48+
[InlineData("public Task<NullableResponse<int[]>> ClientMethodAsync() { return default; }")]
4749
[InlineData("public Response ClientMethodAsync() { return default; }")]
4850
[InlineData("public SomeClient ClientMethod() { return default; }")]
4951
public async Task AZC0015NotProducedForValidReturnTypes(string usage)
@@ -65,4 +67,4 @@ await Verifier.CreateAnalyzer(code)
6567
.RunAsync();
6668
}
6769
}
68-
}
70+
}

src/dotnet/Azure.ClientSdk.Analyzers/Azure.ClientSdk.Analyzers.Tests/AzureAnalyzerTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ namespace Azure.ClientSdk.Analyzers.Tests
1616
{
1717
private static readonly ReferenceAssemblies DefaultReferenceAssemblies =
1818
ReferenceAssemblies.Default.AddPackages(ImmutableArray.Create(
19-
new PackageIdentity("Azure.Core", "1.21.0"),
19+
new PackageIdentity("Azure.Core", "1.26.0"),
2020
new PackageIdentity("Microsoft.Bcl.AsyncInterfaces", "1.1.0"),
2121
new PackageIdentity("System.Text.Json", "4.6.0"),
2222
new PackageIdentity("Newtonsoft.Json", "12.0.3"),

src/dotnet/Azure.ClientSdk.Analyzers/Azure.ClientSdk.Analyzers.Tests/AzureAnalyzerVerifier.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ namespace Azure.ClientSdk.Analyzers.Tests
1717
{
1818
private static readonly ReferenceAssemblies DefaultReferenceAssemblies =
1919
ReferenceAssemblies.Default.AddPackages(ImmutableArray.Create(
20-
new PackageIdentity("Azure.Core", "1.21.0"),
20+
new PackageIdentity("Azure.Core", "1.26.0"),
2121
new PackageIdentity("Microsoft.Bcl.AsyncInterfaces", "1.1.0"),
2222
new PackageIdentity("System.Text.Json", "4.6.0"),
2323
new PackageIdentity("Newtonsoft.Json", "12.0.3"),

src/dotnet/Azure.ClientSdk.Analyzers/Azure.ClientSdk.Analyzers/ClientMethodsAnalyzer.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ static bool SupportsCancellationsParameter(IParameterSymbol parameterSymbol)
2727
{
2828
return (parameterSymbol.Name == "cancellationToken" && parameterSymbol.Type.Name == "CancellationToken") ||
2929
(parameterSymbol.Name == "context" && parameterSymbol.Type.Name == "RequestContext");
30-
}
30+
}
3131

3232
CheckClientMethodReturnType(context, member);
3333

@@ -100,6 +100,7 @@ bool IsOrImplements(ITypeSymbol typeSymbol, string typeName)
100100
}
101101

102102
if (IsOrImplements(unwrappedType, "Response") ||
103+
IsOrImplements(unwrappedType, "NullableResponse") ||
103104
IsOrImplements(unwrappedType, "Operation") ||
104105
IsOrImplements(originalType, "Pageable") ||
105106
IsOrImplements(originalType, "AsyncPageable") ||

0 commit comments

Comments
 (0)