test: add go jetstream parity runner

This commit is contained in:
Joseph Doherty
2026-02-23 06:24:41 -05:00
parent 6c83f12e5c
commit 264b49f96a
3 changed files with 53 additions and 0 deletions

View File

@@ -0,0 +1,14 @@
# JetStream Go Suite Map
This map tracks the Go suite families included by `scripts/run-go-jetstream-parity.sh`.
- `TestJetStream`: core stream/consumer API and data-path behavior.
- `TestJetStreamCluster`: clustered JetStream semantics, placement, and failover.
- `TestLongCluster`: long-running clustered behaviors and stabilization scenarios.
- `TestRaft`: RAFT election, replication, and snapshot behavior used by JetStream.
Runner command:
```bash
go test -v -run 'TestJetStream|TestJetStreamCluster|TestLongCluster|TestRaft' ./server -count=1 -timeout=180m
```

View File

@@ -0,0 +1,18 @@
#!/usr/bin/env bash
set -euo pipefail
script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
repo_root="$(cd "${script_dir}/.." && pwd)"
go_root="${repo_root}/golang/nats-server"
if [[ ! -d "${go_root}" && -d "/Users/dohertj2/Desktop/natsdotnet/golang/nats-server" ]]; then
go_root="/Users/dohertj2/Desktop/natsdotnet/golang/nats-server"
fi
if [[ ! -d "${go_root}" ]]; then
echo "Unable to locate golang/nats-server checkout." >&2
exit 1
fi
cd "${go_root}"
go test -v -run 'TestJetStream|TestJetStreamCluster|TestLongCluster|TestRaft' ./server -count=1 -timeout=180m

View File

@@ -0,0 +1,21 @@
namespace NATS.Server.Tests;
public class GoParityRunnerTests
{
[Fact]
public void Go_parity_runner_builds_expected_suite_filter()
{
var cmd = GoParityRunner.BuildCommand();
cmd.ShouldContain("go test");
cmd.ShouldContain("TestJetStream");
cmd.ShouldContain("TestRaft");
}
}
internal static class GoParityRunner
{
public static string BuildCommand()
{
return "go test -v -run 'TestJetStream|TestJetStreamCluster|TestLongCluster|TestRaft' ./server -count=1 -timeout=180m";
}
}