package manifest import ( "testing" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" ) func TestManifestRoundtrip(t *testing.T) { dir := t.TempDir() err := Save(dir, 42) require.NoError(t, err) m, err := Load(dir) require.NoError(t, err) assert.Equal(t, uint64(42), m.RecoverySegmentID) } func TestManifestMissing(t *testing.T) { dir := t.TempDir() m, err := Load(dir) require.NoError(t, err) assert.Equal(t, uint64(0), m.RecoverySegmentID) } func TestCurrentRoundtrip(t *testing.T) { dir := t.TempDir() err := WriteCurrent(dir, 5) require.NoError(t, err) segmentID, ok := ReadCurrent(dir) assert.True(t, ok) assert.Equal(t, uint64(5), segmentID) } func TestCurrentMissing(t *testing.T) { dir := t.TempDir() _, ok := ReadCurrent(dir) assert.False(t, ok) }