render_test.gno
1.02 Kb · 28 lines
1package abt
2
3import (
4 "strings"
5 "testing"
6
7 "gno.land/p/nt/uassert/v0"
8)
9
10func TestRender(cur realm, t *testing.T) {
11 setupABT(cross(cur), t)
12 testing.SetRealm(testing.NewUserRealm(abtTest.Admin))
13 Mint(cross(cur), abtTest.Owner, 123)
14 for _, text := range []string{"Akkadia Beta Token", "$abt", "**Decimals**: 6", "**Total supply**: 123", "**Frozen**: true"} {
15 uassert.True(t, strings.Contains(Render(""), text))
16 }
17 uassert.Equal(t, "123", Render("balance/"+abtTest.Owner.String()))
18 uassert.Equal(t, "0", Render("balance/"+abtTest.Other.String()))
19 for _, path := range []string{"unknown", "balance/", "balance/invalid", "balance/" + abtTest.Owner.String() + "/extra", "balance/<script>"} {
20 uassert.Equal(t, "404", Render(path))
21 }
22 uassert.Equal(t, int64(123), TotalSupply())
23 uassert.Equal(t, int64(123), BalanceOf(abtTest.Owner))
24 uassert.Equal(t, int64(0), Allowance(abtTest.Owner, abtTest.Other))
25 uassert.True(t, IsFrozen())
26 SetFrozen(cross(cur), false)
27 uassert.True(t, strings.Contains(Render(""), "**Frozen**: false"))
28}