diff --git a/pkg/storagegroup/storagegroup.go b/pkg/storagegroup/storagegroup.go index c1994c3..1a73a5a 100644 --- a/pkg/storagegroup/storagegroup.go +++ b/pkg/storagegroup/storagegroup.go @@ -18,6 +18,12 @@ func NewFromV2(aV2 *storagegroup.StorageGroup) *StorageGroup { } // New creates and initializes blank StorageGroup. +// +// Defaults: +// - size: 0; +// - exp: 0; +// - members: nil; +// - hash: nil. func New() *StorageGroup { return NewFromV2(new(storagegroup.StorageGroup)) } diff --git a/pkg/storagegroup/storagegroup_test.go b/pkg/storagegroup/storagegroup_test.go index b89f544..ee6c6a6 100644 --- a/pkg/storagegroup/storagegroup_test.go +++ b/pkg/storagegroup/storagegroup_test.go @@ -71,3 +71,23 @@ func TestStorageGroup_ToV2(t *testing.T) { require.Nil(t, x.ToV2()) }) } + +func TestNew(t *testing.T) { + t.Run("default values", func(t *testing.T) { + sg := storagegroup.New() + + // check initial values + require.Nil(t, sg.Members()) + require.Nil(t, sg.ValidationDataHash()) + require.Zero(t, sg.ExpirationEpoch()) + require.Zero(t, sg.ValidationDataSize()) + + // convert to v2 message + sgV2 := sg.ToV2() + + require.Nil(t, sgV2.GetMembers()) + require.Nil(t, sgV2.GetValidationHash()) + require.Zero(t, sgV2.GetExpirationEpoch()) + require.Zero(t, sgV2.GetValidationDataSize()) + }) +}