Skip to content

Commit 262e166

Browse files
authored
testcase to check http2 set (#836)
* add test to ensure http2 ver set * remove comment
1 parent f9985ed commit 262e166

File tree

1 file changed

+38
-0
lines changed

1 file changed

+38
-0
lines changed

tests/KubernetesClient.Tests/WatchTests.cs

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -701,5 +701,43 @@ public void ReadError()
701701
Assert.Equal("too old resource version: 44982(53593)", k8sException.Status.Message);
702702
}
703703
}
704+
705+
private class CheckHeaderDelegatingHandler : DelegatingHandler
706+
{
707+
public Version Version { get; private set; }
708+
709+
public CheckHeaderDelegatingHandler()
710+
: base()
711+
{
712+
}
713+
714+
public CheckHeaderDelegatingHandler(HttpMessageHandler innerHandler)
715+
: base(innerHandler)
716+
{
717+
}
718+
719+
protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
720+
{
721+
Version = request.Version;
722+
return base.SendAsync(request, cancellationToken);
723+
}
724+
}
725+
726+
[Fact]
727+
public async Task MustHttp2VersionSet()
728+
{
729+
var server = new MockKubeApiServer(testOutput, async httpContext =>
730+
{
731+
await WriteStreamLine(httpContext, MockAddedEventStreamLine).ConfigureAwait(false);
732+
return false;
733+
});
734+
735+
var h = new CheckHeaderDelegatingHandler();
736+
var client = new Kubernetes(new KubernetesClientConfiguration { Host = server.Uri.ToString() }, h);
737+
738+
Assert.Null(h.Version);
739+
await client.ListNamespacedPodWithHttpMessagesAsync("default", watch: true).ConfigureAwait(false);
740+
Assert.Equal(HttpVersion.Version20, h.Version);
741+
}
704742
}
705743
}

0 commit comments

Comments
 (0)