Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: add contract-contract interation with ownership example #1262

Merged
merged 9 commits into from
Dec 7, 2023

Conversation

moul
Copy link
Member

@moul moul commented Oct 19, 2023

Addresses gnoswap-labs#7 (comment)

CI is red -> related/depends on #1241, #1249 (cc @gfanton).

$ go test -v . -run TestTestdata/grc20-registry
=== RUN   TestTestdata
=== RUN   TestTestdata/grc20-registry
=== PAUSE TestTestdata/grc20-registry
=== CONT  TestTestdata/grc20-registry
transfer from=g1sqt92sa06ugh8nlt98kyghw83qy84paf4csyh6 to=g123456789 some-amount
    testscript.go:534: WORK=$WORK
        PATH=/nix/store/xl220d87dlnq05kiz1pjqa9snhlvr1rs-go-1.20.8/share/go/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/Users/moul/bin:/Users/moul/.nix-profile/bin:/etc/profiles/per-user/moul/bin:/run/current-system/sw/bin:/nix/var/nix/profiles/default/bin:/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin:/Users/moul/.local/bin:/Users/moul/.local/share/node_modules/bin:/Users/moul/go/bin:/Users/moul/.local/share/rust/cargo/bin:/Users/moul/.local/share/rust/rustup/bin:/Users/moul/.config/zsh/plugins/p10k-config
        GOTRACEBACK=system
        HOME=/no-home
        TMPDIR=$WORK/.tmp
        devnull=/dev/null
        /=/
        :=:
        $=$
        GOCOVERDIR=
        exe=
        USER_SEED_test1=source bonus chronic canvas draft south burst lottery vacant surface solve popular case indicate oppose farm nothing bullet exhibit title speed wink action roast
        USER_ADDR_test1=g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5
        GNOROOT=/Users/moul/go/src/github.com/gnolang/gno
        GNOHOME=/var/folders/22/d9yt75bd2wv9sl3dm_lx85x80000gn/T/TestTestdata1289631443/001/gno
        
        # test for add package
        ## start a new node (1.390s)
        > gnoland start
        [stdout]
        node started successfully
        
        # add registry (0.466s)
        > gnokey maketx addpkg -pkgdir $WORK/registry -pkgpath gno.land/r/registry -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1
        [stdout]
        
        OK!
        GAS WANTED: 2000000
        GAS USED:   274024
        
        [stderr]
        Enter password.
        
        # we call Transfer with foo20, before it's registered (0.454s)
        > gnokey maketx call -pkgpath gno.land/r/registry -func TransferByName -args 'foo20' -args 'g123456789' -args '42' -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1
        [stdout]
        ("not found" string)
        OK!
        GAS WANTED: 2000000
        GAS USED:   73759
        
        [stderr]
        Enter password.
        
        > stdout 'not found'
        # add foo20, and foo20wrapper (0.936s)
        > gnokey maketx addpkg -pkgdir $WORK/foo20 -pkgpath gno.land/r/foo20 -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1
        [stdout]
        
        OK!
        GAS WANTED: 2000000
        GAS USED:   196098
        
        [stderr]
        Enter password.
        
        > gnokey maketx addpkg -pkgdir $WORK/foo20wrapper -pkgpath gno.land/r/foo20wrapper -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1
        [stdout]
        
        OK!
        GAS WANTED: 2000000
        GAS USED:   276276
        
        [stderr]
        Enter password.
        
        # we call Transfer with foo20, after it's registered (0.464s)
        > gnokey maketx call -pkgpath gno.land/r/registry -func TransferByName -args 'foo20' -args 'g123456789' -args '42' -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1
        [stdout]
        ("same address, success!" string)
        OK!
        GAS WANTED: 2000000
        GAS USED:   132948
        
        [stderr]
        Enter password.
        
        > stdout 'same address, success!'
        PASS
        
--- PASS: TestTestdata (0.01s)
    --- PASS: TestTestdata/grc20-registry (4.09s)
PASS
ok  	github.com/gnolang/gno/gno.land/cmd/gnoland	(cached)

@moul moul self-assigned this Oct 19, 2023
@github-actions github-actions bot added the 📦 ⛰️ gno.land Issues or PRs gno.land package related label Oct 19, 2023
@codecov
Copy link

codecov bot commented Oct 19, 2023

Codecov Report

All modified and coverable lines are covered by tests ✅

Comparison is base (aaeb808) 55.91% compared to head (ffcdf3c) 56.02%.
Report is 5 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #1262      +/-   ##
==========================================
+ Coverage   55.91%   56.02%   +0.10%     
==========================================
  Files         421      421              
  Lines       65444    65725     +281     
==========================================
+ Hits        36595    36823     +228     
- Misses      25991    26028      +37     
- Partials     2858     2874      +16     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@moul moul mentioned this pull request Oct 19, 2023
18 tasks
Signed-off-by: moul <[email protected]>
@r3v4s
Copy link
Contributor

r3v4s commented Oct 20, 2023

Implemented here (gnoswap-labs@947fe39) and it works well.
@mconcat and I are adding additional ownable logic (register, un-register) and interface to complete this PR.

@moul moul marked this pull request as ready for review November 8, 2023 22:44
@moul moul requested a review from a team as a code owner November 8, 2023 22:44
gno.land/cmd/gnoland/testdata/grc20-registry.txtar Outdated Show resolved Hide resolved
gno.land/cmd/gnoland/testdata/grc20-registry.txtar Outdated Show resolved Hide resolved
gno.land/cmd/gnoland/testdata/grc20-registry.txtar Outdated Show resolved Hide resolved
Copy link
Member

@zivkovicmilos zivkovicmilos left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking good 💯

@moul moul merged commit 5a0ff55 into gnolang:master Dec 7, 2023
177 of 178 checks passed
gfanton added a commit to moul/gno that referenced this pull request Jan 18, 2024
…ng#1262)

Addresses
gnoswap-labs#7 (comment)

CI is red -> related/depends on gnolang#1241, gnolang#1249 (cc @gfanton).

```console
$ go test -v . -run TestTestdata/grc20-registry
=== RUN   TestTestdata
=== RUN   TestTestdata/grc20-registry
=== PAUSE TestTestdata/grc20-registry
=== CONT  TestTestdata/grc20-registry
transfer from=g1sqt92sa06ugh8nlt98kyghw83qy84paf4csyh6 to=g123456789 some-amount
    testscript.go:534: WORK=$WORK
        PATH=/nix/store/xl220d87dlnq05kiz1pjqa9snhlvr1rs-go-1.20.8/share/go/bin:/opt/homebrew/bin:/opt/homebrew/sbin:/Users/moul/bin:/Users/moul/.nix-profile/bin:/etc/profiles/per-user/moul/bin:/run/current-system/sw/bin:/nix/var/nix/profiles/default/bin:/usr/local/bin:/usr/bin:/usr/sbin:/bin:/sbin:/Users/moul/.local/bin:/Users/moul/.local/share/node_modules/bin:/Users/moul/go/bin:/Users/moul/.local/share/rust/cargo/bin:/Users/moul/.local/share/rust/rustup/bin:/Users/moul/.config/zsh/plugins/p10k-config
        GOTRACEBACK=system
        HOME=/no-home
        TMPDIR=$WORK/.tmp
        devnull=/dev/null
        /=/
        :=:
        $=$
        GOCOVERDIR=
        exe=
        USER_SEED_test1=source bonus chronic canvas draft south burst lottery vacant surface solve popular case indicate oppose farm nothing bullet exhibit title speed wink action roast
        USER_ADDR_test1=g1jg8mtutu9khhfwc4nxmuhcpftf0pajdhfvsqf5
        GNOROOT=/Users/moul/go/src/github.com/gnolang/gno
        GNOHOME=/var/folders/22/d9yt75bd2wv9sl3dm_lx85x80000gn/T/TestTestdata1289631443/001/gno
        
        # test for add package
        ## start a new node (1.390s)
        > gnoland start
        [stdout]
        node started successfully
        
        # add registry (0.466s)
        > gnokey maketx addpkg -pkgdir $WORK/registry -pkgpath gno.land/r/registry -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1
        [stdout]
        
        OK!
        GAS WANTED: 2000000
        GAS USED:   274024
        
        [stderr]
        Enter password.
        
        # we call Transfer with foo20, before it's registered (0.454s)
        > gnokey maketx call -pkgpath gno.land/r/registry -func TransferByName -args 'foo20' -args 'g123456789' -args '42' -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1
        [stdout]
        ("not found" string)
        OK!
        GAS WANTED: 2000000
        GAS USED:   73759
        
        [stderr]
        Enter password.
        
        > stdout 'not found'
        # add foo20, and foo20wrapper (0.936s)
        > gnokey maketx addpkg -pkgdir $WORK/foo20 -pkgpath gno.land/r/foo20 -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1
        [stdout]
        
        OK!
        GAS WANTED: 2000000
        GAS USED:   196098
        
        [stderr]
        Enter password.
        
        > gnokey maketx addpkg -pkgdir $WORK/foo20wrapper -pkgpath gno.land/r/foo20wrapper -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1
        [stdout]
        
        OK!
        GAS WANTED: 2000000
        GAS USED:   276276
        
        [stderr]
        Enter password.
        
        # we call Transfer with foo20, after it's registered (0.464s)
        > gnokey maketx call -pkgpath gno.land/r/registry -func TransferByName -args 'foo20' -args 'g123456789' -args '42' -gas-fee 1000000ugnot -gas-wanted 2000000 -broadcast -chainid=tendermint_test test1
        [stdout]
        ("same address, success!" string)
        OK!
        GAS WANTED: 2000000
        GAS USED:   132948
        
        [stderr]
        Enter password.
        
        > stdout 'same address, success!'
        PASS
        
--- PASS: TestTestdata (0.01s)
    --- PASS: TestTestdata/grc20-registry (4.09s)
PASS
ok  	github.com/gnolang/gno/gno.land/cmd/gnoland	(cached)
```

---------

Signed-off-by: moul <[email protected]>
Co-authored-by: Guilhem Fanton <[email protected]>
Co-authored-by: Hariom Verma <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
📦 ⛰️ gno.land Issues or PRs gno.land package related
Projects
Status: ✅ Done
Status: 🌟 Wanted for Launch
Archived in project
Development

Successfully merging this pull request may close these issues.

5 participants