mirror of
https://github.com/octoleo/restic.git
synced 2025-02-07 06:18:25 +00:00
This keeps backwards compatibility with the previous empty structs. And maybe we'd want to put other fields into the inner struct later, rather than the outer message.
28 lines
971 B
Go
28 lines
971 B
Go
package backup
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/restic/restic/internal/errors"
|
|
"github.com/restic/restic/internal/test"
|
|
"github.com/restic/restic/internal/ui"
|
|
)
|
|
|
|
func createJSONProgress() (*ui.MockTerminal, ProgressPrinter) {
|
|
term := &ui.MockTerminal{}
|
|
printer := NewJSONProgress(term, 3)
|
|
return term, printer
|
|
}
|
|
|
|
func TestJSONError(t *testing.T) {
|
|
term, printer := createJSONProgress()
|
|
test.Equals(t, printer.Error("/path", errors.New("error \"message\"")), nil)
|
|
test.Equals(t, []string{"{\"message_type\":\"error\",\"error\":{\"message\":\"error \\\"message\\\"\"},\"during\":\"archival\",\"item\":\"/path\"}\n"}, term.Errors)
|
|
}
|
|
|
|
func TestJSONScannerError(t *testing.T) {
|
|
term, printer := createJSONProgress()
|
|
test.Equals(t, printer.ScannerError("/path", errors.New("error \"message\"")), nil)
|
|
test.Equals(t, []string{"{\"message_type\":\"error\",\"error\":{\"message\":\"error \\\"message\\\"\"},\"during\":\"scan\",\"item\":\"/path\"}\n"}, term.Errors)
|
|
}
|