mirror of
https://github.com/zrepl/zrepl.git
synced 2024-11-29 11:55:03 +01:00
70 lines
1.1 KiB
Go
70 lines
1.1 KiB
Go
package pdu
|
|
|
|
import (
|
|
"testing"
|
|
"time"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestFilesystemVersion_RelName(t *testing.T) {
|
|
|
|
type TestCase struct {
|
|
In FilesystemVersion
|
|
Out string
|
|
Panic bool
|
|
}
|
|
|
|
creat := FilesystemVersionCreation(time.Now())
|
|
tcs := []TestCase{
|
|
{
|
|
In: FilesystemVersion{
|
|
Type: FilesystemVersion_Snapshot,
|
|
Name: "foobar",
|
|
Creation: creat,
|
|
},
|
|
Out: "@foobar",
|
|
},
|
|
{
|
|
In: FilesystemVersion{
|
|
Type: FilesystemVersion_Bookmark,
|
|
Name: "foobar",
|
|
Creation: creat,
|
|
},
|
|
Out: "#foobar",
|
|
},
|
|
{
|
|
In: FilesystemVersion{
|
|
Type: 2342,
|
|
Name: "foobar",
|
|
Creation: creat,
|
|
},
|
|
Panic: true,
|
|
},
|
|
}
|
|
|
|
for _, tc := range tcs {
|
|
if tc.Panic {
|
|
assert.Panics(t, func() {
|
|
tc.In.RelName()
|
|
})
|
|
} else {
|
|
o := tc.In.RelName()
|
|
assert.Equal(t, tc.Out, o)
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
func TestFilesystemVersion_ZFSFilesystemVersion(t *testing.T) {
|
|
|
|
empty := &FilesystemVersion{}
|
|
_, err := empty.ZFSFilesystemVersion()
|
|
assert.Error(t, err)
|
|
|
|
dateInvalid := &FilesystemVersion{Creation: "foobar"}
|
|
_, err = dateInvalid.ZFSFilesystemVersion()
|
|
assert.Error(t, err)
|
|
|
|
}
|