board_test.gno

1.38 Kb ยท 57 lines
 1package boards2
 2
 3import (
 4	"strings"
 5	"testing"
 6
 7	"gno.land/p/nt/testutils"
 8	"gno.land/p/nt/uassert"
 9)
10
11func TestBoardURL(t *testing.T) {
12	pkgPath := strings.TrimPrefix(string(gRealmLink), "gno.land")
13	name := "foobar_test_get_url123"
14	want := pkgPath + ":" + name
15
16	addr := testutils.TestAddress("creator")
17	perms := createBasicBoardPermissions(addr)
18	board := newBoard(1, name, addr, perms)
19	got := makeBoardURI(board)
20	uassert.Equal(t, want, got)
21}
22
23func TestBoardGetThread(t *testing.T) {
24	addr := testutils.TestAddress("creator")
25	perms := createBasicBoardPermissions(addr)
26	b := newBoard(1, "test123", addr, perms)
27
28	_, ok := b.GetThread(12345)
29	uassert.False(t, ok)
30
31	post := b.AddThread(addr, "foo", "bar")
32	_, ok = b.GetThread(post.ID)
33	uassert.True(t, ok)
34}
35
36func TestBoardDeleteThread(t *testing.T) {
37	addr := testutils.TestAddress("creator")
38	perms := createBasicBoardPermissions(addr)
39	b := newBoard(1, "test123", addr, perms)
40
41	post := b.AddThread(addr, "foo", "bar")
42	b.DeleteThread(post.ID)
43
44	_, ok := b.GetThread(post.ID)
45	uassert.False(t, ok)
46}
47
48func TestBoardGetPostFormURL(t *testing.T) {
49	bid := BoardID(386)
50	addr := testutils.TestAddress("creator")
51	perms := createBasicBoardPermissions(addr)
52	b := newBoard(bid, "foo1234", addr, perms)
53	expect := gRealmLink.Call("CreateThread", "boardID", bid.String(), "title", "", "body", "")
54
55	got := makeCreateThreadURI(b)
56	uassert.Equal(t, expect, got)
57}