package backend import ( "testing" rtest "github.com/restic/restic/internal/test" ) func TestHandleString(t *testing.T) { rtest.Equals(t, "<data/foobar>", Handle{Type: PackFile, Name: "foobar"}.String()) rtest.Equals(t, "<lock/1>", Handle{Type: LockFile, Name: "1"}.String()) } func TestHandleValid(t *testing.T) { var handleTests = []struct { h Handle valid bool }{ {Handle{Name: "foo"}, false}, {Handle{Type: 0}, false}, {Handle{Type: ConfigFile, Name: ""}, true}, {Handle{Type: PackFile, Name: ""}, false}, {Handle{Type: LockFile, Name: "010203040506"}, true}, } for i, test := range handleTests { err := test.h.Valid() if err != nil && test.valid { t.Errorf("test %v failed: error returned for valid handle: %v", i, err) } if !test.valid && err == nil { t.Errorf("test %v failed: expected error for invalid handle not found", i) } } }