go-ceph/cephfs/file_fallocate_mode_zero_unsupported_test.go
Anoop C S ab45bcd33a cephfs: Add a separate test file for fallocate with mode 0
There are backports created for fallocate API changes[1] that got merged
recently. Considering the time taken for these backports to get in to
release branches and finally as a released version we create a separate
test file to have more fine grained control over various pre-release CI
jobs with the help of corresponding build tags.

Modification of build tags should go hand-in-hand with the version
detection logic used in file_test.go once a backport is available in
released version.

[1] https://github.com/ceph/ceph/pull/59725

Signed-off-by: Anoop C S <anoopcs@cryptolab.net>
2024-11-12 17:19:57 +00:00

31 lines
745 B
Go

//go:build main
package cephfs
import (
"os"
"testing"
"github.com/stretchr/testify/assert"
)
// TestFallocateModeZeroUnsupported and this test file exists merely to track
// the backports for https://tracker.ceph.com/issues/68026. Once they are
// available with release versions this can probably vanish.
func TestFallocateModeZeroUnsupported(t *testing.T) {
mount := fsConnect(t)
defer fsDisconnect(t, mount)
fname := "file1.txt"
f, err := mount.Open(fname, os.O_RDWR|os.O_CREATE, 0644)
assert.NoError(t, err)
assert.NotNil(t, f)
defer func() {
assert.NoError(t, f.Close())
assert.NoError(t, mount.Unlink(fname))
}()
err = f.Fallocate(FallocNoFlag, 0, 10)
assert.Error(t, err)
assert.Equal(t, ErrOpNotSupported, err)
}