From 85fff9ebf5a3177d8c4e48d7314e402c0be27cee Mon Sep 17 00:00:00 2001
From: Alan Pearce
Date: Fri, 21 Mar 2025 21:52:31 +0100
Subject: Add MapIter to map over iterators
---
gomponents_test.go | 18 ++++++++++++++++++
1 file changed, 18 insertions(+)
(limited to 'gomponents_test.go')
diff --git a/gomponents_test.go b/gomponents_test.go
index 0d1c478..39b5fe6 100644
--- a/gomponents_test.go
+++ b/gomponents_test.go
@@ -5,6 +5,7 @@ import (
"fmt"
"io"
"os"
+ "slices"
"strings"
"testing"
@@ -302,6 +303,23 @@ func ExampleMapMap() {
// Output:
}
+func TestMapIter(t *testing.T) {
+ items := slices.Values([]string{"party hat", "super hat"})
+ e := g.El("ul", g.MapIter(items, func(value string) g.Node {
+ return g.El("li", g.Text(value))
+ }))
+ assert.Equal(t, ``, e)
+}
+
+func ExampleMapIter() {
+ items := slices.Values([]string{"party hat", "super hat"})
+ e := g.El("ul", g.MapIter(items, func(value string) g.Node {
+ return g.El("li", g.Text(value))
+ }))
+ _ = e.Render(os.Stdout)
+ // Output:
+}
+
func TestGroup(t *testing.T) {
t.Run("groups multiple nodes into one", func(t *testing.T) {
children := []g.Node{g.El("br", g.Attr("id", "hat")), g.El("hr")}
--
cgit 1.4.1