#if !NETSTANDARD2_1 || NET5_0 using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Net.WebSockets; using System.Security.Cryptography.X509Certificates; using System.Threading; using System.Threading.Tasks; namespace k8s.Tests.Mock { public class MockWebSocketBuilder : WebSocketBuilder { public Dictionary RequestHeaders { get; } = new Dictionary(); public Collection Certificates { get; } = new Collection(); public Uri Uri { get; private set; } public WebSocket PublicWebSocket => this.WebSocket; public override WebSocketBuilder AddClientCertificate(X509Certificate2 certificate) { this.Certificates.Add(certificate); return this; } public override Task BuildAndConnectAsync(Uri uri, CancellationToken cancellationToken) { this.Uri = uri; return Task.FromResult(this.PublicWebSocket); } public override WebSocketBuilder SetRequestHeader(string headerName, string headerValue) { this.RequestHeaders.Add(headerName, headerValue); return this; } } } #endif // !NETSTANDARD2_1 || NET5_0