z_ui_4_b_filetest.gno

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