diff --git a/core/mathx/entropy_test.go b/core/mathx/entropy_test.go index 03db018d154d..1f477acac263 100644 --- a/core/mathx/entropy_test.go +++ b/core/mathx/entropy_test.go @@ -29,3 +29,10 @@ func TestCalcDiffEntropy(t *testing.T) { } assert.True(t, CalcEntropy(m) < .99) } + +func TestCalcEntropySingleItem(t *testing.T) { + m := map[any]int{ + "only": 42, + } + assert.Equal(t, float64(1), CalcEntropy(m)) +} diff --git a/core/stringx/strings_test.go b/core/stringx/strings_test.go index b4681fe5c592..0adcaf3ab46e 100644 --- a/core/stringx/strings_test.go +++ b/core/stringx/strings_test.go @@ -29,6 +29,40 @@ func TestContainsString(t *testing.T) { } } +func TestHasEmpty(t *testing.T) { + cases := []struct { + args []string + expect bool + }{ + { + args: []string{"a", "b", "c"}, + expect: false, + }, + { + args: []string{"a", "", "c"}, + expect: true, + }, + { + args: []string{""}, + expect: true, + }, + { + args: []string{}, + expect: false, + }, + { + args: nil, + expect: false, + }, + } + + for _, each := range cases { + t.Run(path.Join(each.args...), func(t *testing.T) { + assert.Equal(t, each.expect, HasEmpty(each.args...)) + }) + } +} + func TestNotEmpty(t *testing.T) { cases := []struct { args []string