z_ui_4_b_filetest.gno
3.27 Kb · 64 lines
1// Render thread sorting comments from newest to oldest.
2package main
3
4import (
5 "std"
6 "testing"
7
8 boards2 "gno.land/r/gnoland/boards2/v1"
9)
10
11const (
12 owner = std.Address("g16jpf0puufcpcjkph5nxueec8etpcldz7zwgydq") // @devx
13 boardName = "BoardName"
14)
15
16var threadID boards2.PostID
17
18func init() {
19 testing.SetRealm(std.NewUserRealm(owner))
20
21 // Create a board and a thread
22 boardID := boards2.CreateBoard(cross, boardName, false)
23 threadID = boards2.CreateThread(cross, boardID, "Foo", "Body")
24
25 // Create two comments and a reply to a comment
26 boards2.CreateReply(cross, boardID, threadID, 0, "First comment")
27
28 replyID := boards2.CreateReply(cross, boardID, threadID, 0, "Second comment")
29 boards2.CreateReply(cross, boardID, threadID, replyID, "Third comment")
30}
31
32func main() {
33 path := boardName + "/" + threadID.String() + "?order=desc"
34 println(boards2.Render(path))
35}
36
37// Output:
38// # Foo
39//
40// Body
41//
42// Created by [g16jpf0puufcpcjkph5nxueec8etpcldz7zwgydq](/u/g16jpf0puufcpcjkph5nxueec8etpcldz7zwgydq) on 2009-02-13 11:31pm UTC
43// [Flag](/r/gnoland/boards2/v1$help&func=FlagThread&boardID=1&reason=&threadID=1) • [Repost](/r/gnoland/boards2/v1$help&func=CreateRepost&boardID=1&body=&destinationBoardID=&threadID=1&title=) • [Reply](/r/gnoland/boards2/v1$help&func=CreateReply&boardID=1&body=&replyID=0&threadID=1) • [Edit](/r/gnoland/boards2/v1$help&func=EditThread&boardID=1&body=Body&threadID=1&title=Foo) • [Delete](/r/gnoland/boards2/v1$help&func=DeleteThread&boardID=1&threadID=1)
44//
45// ---
46// Sort by: [newest first](/r/gnoland/boards2/v1:BoardName/1?order=asc)
47//
48// >
49// > Second comment
50// >
51// > Created by [g16jpf0puufcpcjkph5nxueec8etpcldz7zwgydq](/u/g16jpf0puufcpcjkph5nxueec8etpcldz7zwgydq) on 2009-02-13 11:31pm UTC, [#3](/r/gnoland/boards2/v1:BoardName/1/3)
52// [Flag](/r/gnoland/boards2/v1$help&func=FlagReply&boardID=1&reason=&replyID=3&threadID=1) • [Reply](/r/gnoland/boards2/v1$help&func=CreateReply&boardID=1&body=&replyID=3&threadID=1) • [Edit](/r/gnoland/boards2/v1$help&func=EditReply&boardID=1&body=Second+comment&replyID=3&threadID=1) • [Delete](/r/gnoland/boards2/v1$help&func=DeleteReply&boardID=1&replyID=3&threadID=1)
53// >
54// > >
55// > > Third comment
56// > >
57// > > Created by [g16jpf0puufcpcjkph5nxueec8etpcldz7zwgydq](/u/g16jpf0puufcpcjkph5nxueec8etpcldz7zwgydq) on 2009-02-13 11:31pm UTC, [#4](/r/gnoland/boards2/v1:BoardName/1/4)
58// [Flag](/r/gnoland/boards2/v1$help&func=FlagReply&boardID=1&reason=&replyID=4&threadID=1) • [Reply](/r/gnoland/boards2/v1$help&func=CreateReply&boardID=1&body=&replyID=4&threadID=1) • [Edit](/r/gnoland/boards2/v1$help&func=EditReply&boardID=1&body=Third+comment&replyID=4&threadID=1) • [Delete](/r/gnoland/boards2/v1$help&func=DeleteReply&boardID=1&replyID=4&threadID=1)
59//
60// >
61// > First comment
62// >
63// > Created by [g16jpf0puufcpcjkph5nxueec8etpcldz7zwgydq](/u/g16jpf0puufcpcjkph5nxueec8etpcldz7zwgydq) on 2009-02-13 11:31pm UTC, [#2](/r/gnoland/boards2/v1:BoardName/1/2)
64// [Flag](/r/gnoland/boards2/v1$help&func=FlagReply&boardID=1&reason=&replyID=2&threadID=1) • [Reply](/r/gnoland/boards2/v1$help&func=CreateReply&boardID=1&body=&replyID=2&threadID=1) • [Edit](/r/gnoland/boards2/v1$help&func=EditReply&boardID=1&body=First+comment&replyID=2&threadID=1) • [Delete](/r/gnoland/boards2/v1$help&func=DeleteReply&boardID=1&replyID=2&threadID=1)