package secret import ( "fmt" "path/filepath" "testing" "time" "github.com/spf13/afero" "github.com/stretchr/testify/require" ) func TestGenerateVersionNameMaxSerial(t *testing.T) { t.Parallel() fs := afero.NewMemMapFs() secretDir := "/test/secret" versionsDir := filepath.Join(secretDir, "versions") // Create 999 versions today := time.Now().Format("20060102") for i := 1; i <= 999; i++ { versionName := fmt.Sprintf("%s.%03d", today, i) err := fs.MkdirAll(filepath.Join(versionsDir, versionName), 0o755) require.NoError(t, err) } // Try to create one more - should fail _, err := GenerateVersionName(fs, secretDir) require.ErrorIs(t, err, errMaxVersionsPerDay) }