From ba4029ec61354b2ead4a4bcfa290efa5bfd6cfae Mon Sep 17 00:00:00 2001 From: Ben Schumacher Date: Wed, 4 Mar 2026 11:21:05 +0100 Subject: [PATCH] Fix flaky TestConversionURLValues when run with -shuffle Tests that call SetURLValuesSliceKeySuffix mutate package-level global state without restoring it. When shuffled to run before TestConversionURLValues, the suffix is "" or "[i]" instead of "[]", causing key mismatches. Add t.Cleanup to restore the default suffix. Co-Authored-By: Claude Opus 4.6 --- conversions_test.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/conversions_test.go b/conversions_test.go index 82adac2..d359d1e 100644 --- a/conversions_test.go +++ b/conversions_test.go @@ -128,6 +128,7 @@ func TestConversionURLQuery(t *testing.T) { } func TestConversionURLQueryNoSliceKeySuffix(t *testing.T) { + t.Cleanup(func() { _ = objx.SetURLValuesSliceKeySuffix(objx.URLValuesSliceKeySuffixArray) }) m := getURLQueryMap() err := objx.SetURLValuesSliceKeySuffix(objx.URLValuesSliceKeySuffixEmpty) require.Nil(t, err) @@ -144,6 +145,7 @@ func TestConversionURLQueryNoSliceKeySuffix(t *testing.T) { } func TestConversionURLQueryIndexSliceKeySuffix(t *testing.T) { + t.Cleanup(func() { _ = objx.SetURLValuesSliceKeySuffix(objx.URLValuesSliceKeySuffixArray) }) m := getURLQueryMap() m.Set("mapSlice", []objx.Map{{"age": 40, "sex": "male"}, {"height": 152}}) err := objx.SetURLValuesSliceKeySuffix(objx.URLValuesSliceKeySuffixIndex) @@ -161,6 +163,7 @@ func TestConversionURLQueryIndexSliceKeySuffix(t *testing.T) { } func TestValidityURLQuerySliceKeySuffix(t *testing.T) { + t.Cleanup(func() { _ = objx.SetURLValuesSliceKeySuffix(objx.URLValuesSliceKeySuffixArray) }) err := objx.SetURLValuesSliceKeySuffix("") assert.Nil(t, err) err = objx.SetURLValuesSliceKeySuffix("[]")