1
0
mirror of https://github.com/IBM/fp-go.git synced 2025-08-10 22:31:32 +02:00

fix: rework http support

Signed-off-by: Dr. Carsten Leue <carsten.leue@de.ibm.com>
This commit is contained in:
Dr. Carsten Leue
2023-07-16 22:46:18 +02:00
parent bf04dad87c
commit 48f38f2e43
20 changed files with 905 additions and 31 deletions

58
record/record_test.go Normal file
View File

@@ -0,0 +1,58 @@
package record
import (
"sort"
"testing"
"github.com/ibm/fp-go/internal/utils"
O "github.com/ibm/fp-go/option"
"github.com/stretchr/testify/assert"
)
func TestKeys(t *testing.T) {
data := map[string]string{
"a": "A",
"b": "B",
"c": "C",
}
keys := Keys(data)
sort.Strings(keys)
assert.Equal(t, []string{"a", "b", "c"}, keys)
}
func TestValues(t *testing.T) {
data := map[string]string{
"a": "A",
"b": "B",
"c": "C",
}
keys := Values(data)
sort.Strings(keys)
assert.Equal(t, []string{"A", "B", "C"}, keys)
}
func TestMap(t *testing.T) {
data := map[string]string{
"a": "a",
"b": "b",
"c": "c",
}
expected := map[string]string{
"a": "A",
"b": "B",
"c": "C",
}
assert.Equal(t, expected, Map[string](utils.Upper)(data))
}
func TestLookup(t *testing.T) {
data := map[string]string{
"a": "a",
"b": "b",
"c": "c",
}
assert.Equal(t, O.Some("a"), Lookup[string, string]("a")(data))
assert.Equal(t, O.None[string](), Lookup[string, string]("a1")(data))
}