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

Function main

cmd/test-conn/main-test-conn.go:48–104  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

46}
47
48func main() {
49 timeoutFlag := flag.Duration("t", 60*time.Second, "connection timeout")
50 interactiveFlag := flag.Bool("i", false, "interactive mode (prompt for user input)")
51 versionFlag := flag.Bool("v", false, "show version")
52
53 flag.Usage = usage
54 flag.Parse()
55
56 if *versionFlag {
57 fmt.Printf("test-conn version %s (built %s)\n", WaveVersion, BuildTime)
58 os.Exit(0)
59 }
60
61 args := flag.Args()
62 if len(args) < 2 {
63 usage()
64 }
65
66 command := args[0]
67 connName := args[1]
68
69 autoAccept := !*interactiveFlag
70
71 err := initTestHarness(autoAccept)
72 if err != nil {
73 log.Fatalf("Failed to initialize: %v", err)
74 }
75
76 switch command {
77 case "ssh", "connect":
78 err = testBasicConnect(connName, *timeoutFlag)
79
80 case "exec":
81 if len(args) < 3 {
82 log.Fatalf("exec command requires a command argument")
83 }
84 cmd := args[2]
85 err = testShellWithCommand(connName, cmd, *timeoutFlag)
86
87 case "wshexec":
88 if len(args) < 3 {
89 log.Fatalf("wshexec command requires a command argument")
90 }
91 cmd := args[2]
92 err = testWshExec(connName, cmd, *timeoutFlag)
93
94 case "shell":
95 err = testInteractiveShell(connName, *timeoutFlag)
96
97 default:
98 log.Fatalf("Unknown command: %s", command)
99 }
100
101 if err != nil {
102 log.Fatalf("Error: %v", err)
103 }
104}

Callers

nothing calls this directly

Calls 7

usageFunction · 0.85
initTestHarnessFunction · 0.85
testBasicConnectFunction · 0.85
testShellWithCommandFunction · 0.85
testWshExecFunction · 0.85
testInteractiveShellFunction · 0.85
ParseMethod · 0.80

Tested by

no test coverage detected