58 lines
2.0 KiB
Go
58 lines
2.0 KiB
Go
package utils_test
|
|
|
|
/* ---------------------------------------------------------------- *
|
|
* UNIT TESTING
|
|
* ---------------------------------------------------------------- */
|
|
|
|
import (
|
|
"logik/core/utils"
|
|
"strings"
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
/* ---------------------------------------------------------------- *
|
|
* TESTCASE SortStrings
|
|
* ---------------------------------------------------------------- */
|
|
|
|
func TestSortStrings(test *testing.T) {
|
|
var assert = assert.New(test)
|
|
var list = []string{"katze", "Hund", "baby", "Pluto", "Saturn", "Mond"}
|
|
utils.SortStrings(&list)
|
|
assert.Equal(list, []string{"baby", "Hund", "katze", "Mond", "Pluto", "Saturn"})
|
|
}
|
|
|
|
/* ---------------------------------------------------------------- *
|
|
* TESTCASE SortStrings
|
|
* ---------------------------------------------------------------- */
|
|
|
|
func TestFilterStrings(test *testing.T) {
|
|
var assert = assert.New(test)
|
|
var list = []string{"abram", "aaron", "aardvark", "aarhus", "alaska", "eel", "aal"}
|
|
var list2 = utils.FilterStrings(&list, func(x string) bool { return strings.HasPrefix(x, "aa") })
|
|
assert.Equal(list2, []string{"aaron", "aardvark", "aarhus", "aal"})
|
|
}
|
|
|
|
/* ---------------------------------------------------------------- *
|
|
* TESTCASE UnionStrings2, UnionStringsTo
|
|
* ---------------------------------------------------------------- */
|
|
|
|
func TestUnionStrings2(test *testing.T) {
|
|
var assert = assert.New(test)
|
|
var list1 = []string{"red", "blue", "blue", "green", "blue", "grey", "black", "green"}
|
|
var list2 = []string{"yellow", "orange", "lila", "red"}
|
|
var list = utils.UnionStrings2(list1, list2)
|
|
utils.SortStrings(&list)
|
|
assert.Equal(list, []string{"black", "blue", "green", "grey", "lila", "orange", "red", "yellow"})
|
|
}
|
|
|
|
func UnionStringsTo(test *testing.T) {
|
|
var assert = assert.New(test)
|
|
var list1 = []string{"red", "blue", "blue", "green"}
|
|
var list2 = []string{"yellow", "red", "black"}
|
|
utils.UnionStringsTo(&list1, list2)
|
|
utils.SortStrings(&list1)
|
|
assert.Equal(list1, []string{"black", "blue", "green", "red", "yellow"})
|
|
}
|