diff options
Diffstat (limited to 'sudo_test.go')
| -rw-r--r-- | sudo_test.go | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/sudo_test.go b/sudo_test.go index dd5f0dd..3d6fb09 100644 --- a/sudo_test.go +++ b/sudo_test.go @@ -10,6 +10,7 @@ import ( "context" "testing" + "git.sr.ht/~shulhan/pakakeh.go/lib/mlog" "git.sr.ht/~shulhan/pakakeh.go/lib/test" ) @@ -23,16 +24,20 @@ func TestExecLocal_sudo(t *testing.T) { } var ( - mockin = &mockStdin{} - mockout = &bytes.Buffer{} - req = &ExecRequest{ + mockin = &mockStdin{} + req = &ExecRequest{ stdin: mockin, } err error ) req.init(`.`) - req.registerLogWriter(`output`, mockout) + var mockStderr bytes.Buffer + var namederr = mlog.NewNamedWriter(`testerr`, &mockStderr) + var mockStdout bytes.Buffer + var namedout = mlog.NewNamedWriter(`testout`, &mockStdout) + req.mlog.RegisterErrorWriter(namederr) + req.mlog.RegisterOutputWriter(namedout) var cases = []testCase{{ desc: `SingleSudo`, @@ -96,20 +101,20 @@ func TestExecLocal_sudo(t *testing.T) { for _, c = range cases { t.Log(c.desc) - mockout.Reset() + mockStderr.Reset() + mockStdout.Reset() mockin.buf.Reset() mockin.buf.WriteString(c.sudoPass) for x, stmt = range c.listStmt { err = ExecLocal(ctx, req, &stmt) if err != nil { - t.Log(mockout.String()) var expError = c.expError[x] test.Assert(t, `error`, expError, err.Error()) } req.mlog.Flush() } - test.Assert(t, c.desc+` output`, c.expOutput, mockout.String()) + test.Assert(t, c.desc+` stdout`, c.expOutput, mockStderr.String()) } } |
