MCPcopy
hub / github.com/wavetermdev/waveterm / TestApplySSHOverrides

Function TestApplySSHOverrides

cmd/wsh/cmd/wshcmd-ssh_test.go:8–75  ·  view source on GitHub ↗
(t *testing.T)

Source from the content-addressed store, hash-verified

6import "testing"
7
8func TestApplySSHOverrides(t *testing.T) {
9 tests := []struct {
10 name string
11 sshArg string
12 login string
13 port string
14 want string
15 wantErr bool
16 }{
17 {
18 name: "no overrides preserves target",
19 sshArg: "root@bar.com:2022",
20 want: "root@bar.com:2022",
21 },
22 {
23 name: "login override replaces parsed user",
24 sshArg: "root@bar.com",
25 login: "foo",
26 want: "foo@bar.com",
27 },
28 {
29 name: "port override replaces parsed port",
30 sshArg: "root@bar.com:2022",
31 port: "2222",
32 want: "root@bar.com:2222",
33 },
34 {
35 name: "both overrides replace parsed user and port",
36 sshArg: "root@bar.com:2022",
37 login: "foo",
38 port: "2200",
39 want: "foo@bar.com:2200",
40 },
41 {
42 name: "login override adds user to bare host",
43 sshArg: "bar.com",
44 login: "foo",
45 want: "foo@bar.com",
46 },
47 {
48 name: "port override adds port to bare host",
49 sshArg: "bar.com",
50 port: "2200",
51 want: "bar.com:2200",
52 },
53 {
54 name: "invalid target returns parse error when override requested",
55 sshArg: "bad host",
56 login: "foo",
57 wantErr: true,
58 },
59 }
60
61 for _, tt := range tests {
62 t.Run(tt.name, func(t *testing.T) {
63 got, err := applySSHOverrides(tt.sshArg, tt.login, tt.port)
64 if (err != nil) != tt.wantErr {
65 t.Fatalf("applySSHOverrides() error = %v, wantErr %v", err, tt.wantErr)

Callers

nothing calls this directly

Calls 2

applySSHOverridesFunction · 0.85
RunMethod · 0.80

Tested by

no test coverage detected