(t testing.TB, cmd *serpent.Command, args ...string, )
| 82 | } |
| 83 | |
| 84 | func setupInvocation(t testing.TB, cmd *serpent.Command, args ...string, |
| 85 | ) *serpent.Invocation { |
| 86 | // I really would like to fail test on error logs, but realistically, turning on by default |
| 87 | // in all our CLI tests is going to create a lot of flaky noise. |
| 88 | logger := slogtest.Make(t, &slogtest.Options{IgnoreErrors: true}). |
| 89 | Leveled(slog.LevelDebug). |
| 90 | Named("cli") |
| 91 | i := &serpent.Invocation{ |
| 92 | Command: cmd, |
| 93 | Args: args, |
| 94 | Stdin: io.LimitReader(nil, 0), |
| 95 | Stdout: (&logWriter{prefix: "stdout", log: logger}), |
| 96 | Stderr: (&logWriter{prefix: "stderr", log: logger}), |
| 97 | Logger: logger, |
| 98 | } |
| 99 | t.Logf("invoking command: %s %s", cmd.Name(), strings.Join(i.Args, " ")) |
| 100 | return i |
| 101 | } |
| 102 | |
| 103 | func NewWithDefaultKeyringCommand(t testing.TB, cmd *serpent.Command, args ...string, |
| 104 | ) (*serpent.Invocation, config.Root) { |
no test coverage detected