MCPcopy Create free account
hub / github.com/dropbox/dbxcli / executeExitTestSubprocess

Function executeExitTestSubprocess

cmd/root_test.go:178–204  ·  view source on GitHub ↗
(t *testing.T, args []string, env map[string]string)

Source from the content-addressed store, hash-verified

176}
177
178func executeExitTestSubprocess(t *testing.T, args []string, env map[string]string) (int, string, string) {
179 t.Helper()
180
181 cmdArgs := append([]string{"-test.run=TestExecuteExitHelper", "--"}, args...)
182 cmd := exec.Command(os.Args[0], cmdArgs...)
183 cmd.Env = append(os.Environ(), "DBXCLI_TEST_EXECUTE_HELPER=1")
184 for key, value := range env {
185 cmd.Env = append(cmd.Env, key+"="+value)
186 }
187
188 var stdout bytes.Buffer
189 var stderr bytes.Buffer
190 cmd.Stdout = &stdout
191 cmd.Stderr = &stderr
192
193 err := cmd.Run()
194 if err == nil {
195 return exitCodeSuccess, stdout.String(), stderr.String()
196 }
197
198 var exitErr *exec.ExitError
199 if errors.As(err, &exitErr) {
200 return exitErr.ExitCode(), stdout.String(), stderr.String()
201 }
202 t.Fatalf("run helper subprocess: %v\nstdout: %s\nstderr: %s", err, stdout.String(), stderr.String())
203 return exitCodeGenericError, stdout.String(), stderr.String()
204}
205
206func TestExecuteExitHelper(t *testing.T) {
207 if os.Getenv("DBXCLI_TEST_EXECUTE_HELPER") != "1" {

Calls

no outgoing calls

Tested by

no test coverage detected