Refactor cluster node code

This commit is contained in:
Ingo Oppermann
2024-07-09 12:26:02 +02:00
parent 28603aab98
commit 480dbb7f53
136 changed files with 5110 additions and 8272 deletions

View File

@@ -1,6 +1,7 @@
package slices
import (
"fmt"
"testing"
"github.com/stretchr/testify/require"
@@ -10,42 +11,46 @@ func TestEqualComparableElements(t *testing.T) {
a := []string{"a", "b", "c", "d"}
b := []string{"b", "c", "a", "d"}
ok := EqualComparableElements(a, b)
require.True(t, ok)
err := EqualComparableElements(a, b)
require.NoError(t, err)
ok = EqualComparableElements(b, a)
require.True(t, ok)
err = EqualComparableElements(b, a)
require.NoError(t, err)
a = append(a, "z")
ok = EqualComparableElements(a, b)
require.False(t, ok)
err = EqualComparableElements(a, b)
require.Error(t, err)
ok = EqualComparableElements(b, a)
require.False(t, ok)
err = EqualComparableElements(b, a)
require.Error(t, err)
}
type String string
func (a String) Equal(b String) bool {
return string(a) == string(b)
func (a String) Equal(b String) error {
if string(a) == string(b) {
return nil
}
return fmt.Errorf("%s != %s", a, b)
}
func TestEqualEqualerElements(t *testing.T) {
a := []String{"a", "b", "c", "d"}
b := []String{"b", "c", "a", "d"}
ok := EqualEqualerElements(a, b)
require.True(t, ok)
err := EqualEqualerElements(a, b)
require.NoError(t, err)
ok = EqualEqualerElements(b, a)
require.True(t, ok)
err = EqualEqualerElements(b, a)
require.NoError(t, err)
a = append(a, "z")
ok = EqualEqualerElements(a, b)
require.False(t, ok)
err = EqualEqualerElements(a, b)
require.Error(t, err)
ok = EqualEqualerElements(b, a)
require.False(t, ok)
err = EqualEqualerElements(b, a)
require.Error(t, err)
}