Facebook
From Speedy Hamster, 4 Years ago, written in Plain Text.
Embed
Download Paste or View Raw
Hits: 127
  1. func TestGenericExecutor(t *testing.T) {
  2.         t.Parallel()
  3.  
  4.         stderr := new(bytes.Buffer)
  5.         stdout := new(bytes.Buffer)
  6.  
  7.         exec := executor.NewGenericExecutor()
  8.         result, err := exec.Launch(executor.ExecConfig{
  9.                 Cmd:    "/bin/bash",
  10.                 Args:   []string{"-c", "sleep 0.2; echo \"hello\""},
  11.                 Stderr: stderr,
  12.                 Stdout: stdout,
  13.         })
  14.         if err != nil {
  15.                 t.Errorf("expected err to be nil: %v", err)
  16.         }
  17.         if expected, actual := -1, result.ExitCode; expected != actual {
  18.                 t.Errorf("expected: %v, actual: %v", expected, actual)
  19.         }
  20.  
  21.         result, err = exec.Wait(context.Background())
  22.         if err != nil {
  23.                 t.Errorf("expected err to be nil: %v", err)
  24.         }
  25.         if expected, actual := 0, result.ExitCode; expected != actual {
  26.                 t.Errorf("expected: %v, actual: %v", expected, actual)
  27.         }
  28.         if expected, actual := "hello", strings.TrimSpace(stdout.String()); expected != actual {
  29.                 t.Errorf("expected: %v, actual: %v", expected, actual)
  30.         }
  31. }
  32.