Synadia.Orbit.Testing.NatsServerProcessManager 1.0.0-preview.4 (original) (raw)
A library for managing NATS server processes in testing and development scenarios.
Features
- NatsServerProcess: Start, monitor, and stop
nats-serverprocesses programmatically- Automatic dynamic port assignment and discovery
- JetStream support with configurable data directories
- Health check validation before returning
- Automatic cleanup of temporary files on disposal
- ChildProcessTracker (Windows): Ensures child processes are terminated when the parent process exits
Usage
// Start a NATS server with JetStream enabled
using var server = NatsServerProcess.Start(logger: Console.WriteLine);
Console.WriteLine($"NATS server running at: {server.Url}");
// Or start without JetStream
using var serverNoJs = NatsServerProcess.Start(withJs: false);
// Async factory method also available
await using var serverAsync = await NatsServerProcess.StartAsync();
Requirements
nats-serverbinary must be available on the systemPATH
Documentation
For more information, see the orbit.net documentation.
| Product | Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 is compatible. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
.NETStandard 2.0
- Microsoft.Bcl.AsyncInterfaces (>= 8.0.0)
- Microsoft.Bcl.Memory (>= 9.0.14)
- System.Diagnostics.DiagnosticSource (>= 8.0.1)
- System.Text.Json (>= 8.0.5)
- System.Threading.Channels (>= 8.0.0)
.NETStandard 2.1
- System.Diagnostics.DiagnosticSource (>= 8.0.1)
- System.Text.Json (>= 8.0.5)
- System.Threading.Channels (>= 8.0.0)
net10.0
- No dependencies.
net8.0
- No dependencies.
net9.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories (1)
Showing the top 1 popular GitHub repositories that depend on Synadia.Orbit.Testing.NatsServerProcessManager:
| Repository | Stars |
|---|---|
| nats-io/nats.net Async .NET client for NATS: pub/sub, request/reply, JetStream, KV, Object Store, Services | 446 |