@@ -54,6 +54,16 @@ func TestMap_Set(t *testing.T) {
54 require.Equal(t, 1, m.Len())
54 require.Equal(t, 1, m.Len())
57+func TestMap_GetOrSet(t *testing.T) {
60+ m := NewMap[string, int]()
62+ require.Equal(t, 42, m.GetOrSet("key1", func() int { return 42 }))
63+ require.Equal(t, 42, m.GetOrSet("key1", func() int { return 99999 }))
64+ require.Equal(t, 1, m.Len())
57func TestMap_Get(t *testing.T) {
67func TestMap_Get(t *testing.T) {
58 t.Parallel()
68 t.Parallel()