| 1513 | } |
| 1514 | |
| 1515 | func TestViewDeepUnnamed(t *testing.T) { |
| 1516 | is := is.New(t) |
| 1517 | ctx := context.Background() |
| 1518 | dir := t.TempDir() |
| 1519 | td := testdir.New(dir) |
| 1520 | td.NodeModules["svelte"] = versions.Svelte |
| 1521 | td.Files["view/teams/users/index.svelte"] = ` |
| 1522 | <script> |
| 1523 | export let onlineUsers = [] |
| 1524 | </script> |
| 1525 | {#each onlineUsers as user} |
| 1526 | <h1>index: {user.id} {user.name} {user.createdAt}</h1> |
| 1527 | {/each} |
| 1528 | ` |
| 1529 | td.Files["view/teams/users/new.svelte"] = ` |
| 1530 | <script> |
| 1531 | export let onlineUser = {} |
| 1532 | </script> |
| 1533 | <h1>new: {onlineUser.id} {onlineUser.name} {onlineUser.createdAt}</h1> |
| 1534 | ` |
| 1535 | td.Files["view/teams/users/show.svelte"] = ` |
| 1536 | <script> |
| 1537 | export let onlineUser = {} |
| 1538 | </script> |
| 1539 | <h1>show: {onlineUser.id} {onlineUser.name} {onlineUser.createdAt}</h1> |
| 1540 | ` |
| 1541 | td.Files["view/teams/users/edit.svelte"] = ` |
| 1542 | <script> |
| 1543 | export let onlineUser = {} |
| 1544 | </script> |
| 1545 | <h1>edit: {onlineUser.id} {onlineUser.name} {onlineUser.createdAt}</h1> |
| 1546 | ` |
| 1547 | td.Files["controller/teams/users/users.go"] = ` |
| 1548 | package users |
| 1549 | import "time" |
| 1550 | type Controller struct {} |
| 1551 | type OnlineUser struct { |
| 1552 | ID int ` + "`" + `json:"id"` + "`" + ` |
| 1553 | Name string ` + "`" + `json:"name"` + "`" + ` |
| 1554 | CreatedAt time.Time ` + "`" + `json:"createdAt"` + "`" + ` |
| 1555 | } |
| 1556 | var now = time.Date(2021, 8, 4, 14, 56, 0, 0, time.UTC) |
| 1557 | func (c *Controller) Index() []*OnlineUser { |
| 1558 | return []*OnlineUser{{1, "a", now}, {2, "b", now}} |
| 1559 | } |
| 1560 | func (c *Controller) New() *OnlineUser { |
| 1561 | return &OnlineUser{3, "c", now} |
| 1562 | } |
| 1563 | func (c *Controller) Show(id int) *OnlineUser { |
| 1564 | return &OnlineUser{id, "s", now} |
| 1565 | } |
| 1566 | func (c *Controller) Edit(id int) *OnlineUser { |
| 1567 | return &OnlineUser{id, "e", now} |
| 1568 | } |
| 1569 | ` |
| 1570 | // Generate the app |
| 1571 | is.NoErr(td.Write(ctx)) |
| 1572 | cli := testcli.New(dir) |