2 implementations of IDevTunnelClient
Aspire.Hosting.DevTunnels (1)
DevTunnelCliClient.cs (1)
11internal sealed class DevTunnelCliClient : IDevTunnelClient
Aspire.Hosting.DevTunnels.Tests (1)
TestDevTunnelClient.cs (1)
10internal sealed class TestDevTunnelClient(Version? cliVersion = null) : IDevTunnelClient
30 references to IDevTunnelClient
Aspire.Hosting.DevTunnels (10)
DevTunnelHealthCheck.cs (2)
11IDevTunnelClient devTunnelClient, 16private readonly IDevTunnelClient _devTunnelClient = devTunnelClient ?? throw new ArgumentNullException(nameof(devTunnelClient));
DevTunnelLoginManager.cs (2)
11IDevTunnelClient devTunnelClient, 18private readonly IDevTunnelClient _devTunnelClient = devTunnelClient;
DevTunnelResourceBuilderExtensions.cs (6)
85builder.Services.TryAddSingleton<IDevTunnelClient, DevTunnelCliClient>(); 95services.GetRequiredService<IDevTunnelClient>(), 125var devTunnelClient = e.Services.GetRequiredService<IDevTunnelClient>(); 949var devTunnelClient = context.Services.GetRequiredService<IDevTunnelClient>();
Aspire.Hosting.DevTunnels.Tests (20)
DevTunnelCliVersionValidationTests.cs (1)
30.AddSingleton<IDevTunnelClient>(devTunnelClient)
DevTunnelResourceBuilderExtensionsTests.cs (19)
208builder.Services.AddSingleton<IDevTunnelClient>(client); 228Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.CreateTunnelAsync) && call.TunnelId == "mytunnel"); 229Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.GetPortListAsync) && call.TunnelId == "mytunnel.eun1"); 230Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.CreatePortAsync) && call.TunnelId == "mytunnel.eun1" && call.PortNumber == 5001); 231Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.DeletePortAsync) && call.TunnelId == "mytunnel.eun1" && call.PortNumber == 6000); 250builder.Services.AddSingleton<IDevTunnelClient>(client); 268Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.CreateTunnelAsync) && call.TunnelId == "mytunnel"); 269Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.GetPortListAsync) && call.TunnelId == "mytunnel.eun1"); 270Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.CreatePortAsync) && call.TunnelId == "mytunnel.eun1" && call.PortNumber == 5001); 271Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.DeletePortAsync) && call.TunnelId == "mytunnel.eun1" && call.PortNumber == 6000); 291builder.Services.AddSingleton<IDevTunnelClient>(client); 312Assert.Equal(nameof(IDevTunnelClient.GetTunnelAsync), call.Method); 318Assert.Equal(nameof(IDevTunnelClient.GetAccessAsync), call.Method); 324Assert.Equal(nameof(IDevTunnelClient.GetAccessAsync), call.Method); 347builder.Services.AddSingleton<IDevTunnelClient>(client); 367Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.GetTunnelAsync) && call.TunnelId == "mytunnel.eun1"); 368Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.GetAccessAsync) && call.TunnelId == "mytunnel.eun1" && call.PortNumber is null); 369Assert.Contains(calls, call => call.Method == nameof(IDevTunnelClient.GetAccessAsync) && call.TunnelId == "mytunnel.eun1" && call.PortNumber == 5001); 708builder.Services.AddSingleton<IDevTunnelClient>(client);