testenv/ starts two real NetBox 4.7 instances (v2 and v1 token), SSH targets on public, mgmt, and prod networks, a jump host, an IPv6-only host, a static host, and a client with ssh, sftp, scp, tmux, zellij, bash, zsh, and fish. A seed script fills NetBox through the REST API. 141 end-to-end checks cover cache and refresh filters, connecting, all resolver strategies, multiple instances, shortcuts and rewrites, SSH options and rules, static hosts, sftp/scp incl. IPv6 and jump hosts, tunnels, local notes and NetBox comments, completion and shell hooks, the TUI (driven through tmux), the configurator, and uninstall. Local only: testenv/up.sh, test.sh, shell.sh, down.sh. Not part of CI/CD. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
10 lines
648 B
Bash
10 lines
648 B
Bash
# The configurator in huh's accessible mode: without NetBox, add a static host,
|
|
# save, then connect. Menu numbers follow the order in internal/setup.
|
|
config_only </dev/null
|
|
rm -f "$XDG_CONFIG_HOME/netssh.yaml"
|
|
# no NetBox, static hosts, add, name, address, user, port, tags, back, save
|
|
out=$(python3 /tests/drive.py 2 4 1 legacy-box 10.231.0.50 admin "" legacy 5 8)
|
|
[[ $out == *"Config saved"* ]] && ok "configure saves" || bad "configure saves" "$out"
|
|
expect_out "config has the host" 'address: "10.231.0.50"' cat "$XDG_CONFIG_HOME/netssh.yaml"
|
|
expect_eq "connect to the configured host" "admin" netssh legacy-box whoami
|