(t *testing.T, getScriptLogger func(logSourceID uuid.UUID) agentscripts.ScriptLogger)
| 298 | } |
| 299 | |
| 300 | func setup(t *testing.T, getScriptLogger func(logSourceID uuid.UUID) agentscripts.ScriptLogger) *agentscripts.Runner { |
| 301 | t.Helper() |
| 302 | if getScriptLogger == nil { |
| 303 | // noop |
| 304 | getScriptLogger = func(uuid.UUID) agentscripts.ScriptLogger { |
| 305 | return noopScriptLogger{} |
| 306 | } |
| 307 | } |
| 308 | fs := afero.NewMemMapFs() |
| 309 | logger := testutil.Logger(t) |
| 310 | s, err := agentssh.NewServer(context.Background(), logger, prometheus.NewRegistry(), fs, agentexec.DefaultExecer, nil) |
| 311 | require.NoError(t, err) |
| 312 | t.Cleanup(func() { |
| 313 | _ = s.Close() |
| 314 | }) |
| 315 | return agentscripts.New(agentscripts.Options{ |
| 316 | LogDir: t.TempDir(), |
| 317 | DataDirBase: t.TempDir(), |
| 318 | Logger: logger, |
| 319 | SSHServer: s, |
| 320 | Filesystem: fs, |
| 321 | GetScriptLogger: getScriptLogger, |
| 322 | }) |
| 323 | } |
| 324 | |
| 325 | type noopScriptLogger struct{} |
| 326 |
no test coverage detected