From 863095ee469ab949df4bea4496e6ab9334038b34 Mon Sep 17 00:00:00 2001 From: Blake <104744707+r3v4s@users.noreply.github.com> Date: Wed, 22 Jan 2025 19:07:06 +0900 Subject: [PATCH] feat: use std.Address (rather then users.AddressOrName) (#481) * feat: use std.Address (rather then users.AddressOrName) --- .../community_pool/community_pool_test.gno | 10 +- .../tests/init_token_register_test.gno | 143 --------- .../tests/init_variable_and_helper_test.gno | 31 -- contract/r/gnoswap/emission/_helper_test.gno | 2 +- contract/r/gnoswap/emission/distribution.gno | 14 +- .../r/gnoswap/emission/distribution_test.gno | 2 +- contract/r/gnoswap/emission/emission.gno | 2 +- contract/r/gnoswap/emission/utils.gno | 6 - contract/r/gnoswap/gnft/utils.gno | 13 - contract/r/gnoswap/gns/gns.gno | 52 ++-- contract/r/gnoswap/gns/gns_test.gno | 45 ++- contract/r/gnoswap/gns/tests/z1_filetest.gno | 15 +- contract/r/gnoswap/gns/tests/z2_filetest.gno | 15 +- contract/r/gnoswap/gns/tests/z3_filetest.gno | 15 +- contract/r/gnoswap/gns/tests/z4_filetest.gno | 11 +- contract/r/gnoswap/gns/utils.gno | 5 - .../r/gnoswap/gov/governance/proposal.gno | 2 +- .../gnoswap/gov/governance/proposal_test.gno | 9 +- .../tests/_0_init_token_register_test.gno | 63 ++-- contract/r/gnoswap/gov/governance/utils.gno | 5 - .../r/gnoswap/gov/governance/vote_test.gno | 14 +- .../r/gnoswap/gov/staker/api_delegation.gno | 2 +- contract/r/gnoswap/gov/staker/staker.gno | 22 +- contract/r/gnoswap/gov/staker/staker_test.gno | 31 +- contract/r/gnoswap/gov/staker/util.gno | 13 - contract/r/gnoswap/gov/staker/util_test.gno | 27 -- contract/r/gnoswap/gov/xgns/xgns.gno | 28 +- contract/r/gnoswap/gov/xgns/xgns_test.gno | 19 +- contract/r/gnoswap/launchpad/_helper_test.gno | 27 +- contract/r/gnoswap/launchpad/deposit.gno | 16 +- contract/r/gnoswap/launchpad/deposit_test.gno | 18 +- .../r/gnoswap/launchpad/launchpad_test.gno | 6 +- contract/r/gnoswap/launchpad/type.gno | 2 +- contract/r/gnoswap/launchpad/util.gno | 5 - contract/r/gnoswap/pool/_helper_test.gno | 162 +++++----- contract/r/gnoswap/pool/pool_manager.gno | 2 +- .../r/gnoswap/pool/pool_transfer_test.gno | 9 +- .../pool/protocol_fee_pool_creation_test.gno | 16 +- .../pool/protocol_fee_withdrawal_test.gno | 56 ++-- contract/r/gnoswap/pool/swap_test.gno | 82 +++-- contract/r/gnoswap/pool/utils.gno | 35 --- contract/r/gnoswap/pool/utils_test.gno | 64 ---- contract/r/gnoswap/position/_helper_test.gno | 292 ++++++------------ contract/r/gnoswap/position/api_test.gno | 5 +- contract/r/gnoswap/position/getter_test.gno | 3 +- .../position/liquidity_management_test.gno | 16 +- contract/r/gnoswap/position/native_token.gno | 17 +- .../r/gnoswap/position/native_token_test.gno | 46 ++- contract/r/gnoswap/position/position.gno | 12 +- contract/r/gnoswap/position/position_test.gno | 69 ++--- contract/r/gnoswap/position/utils.gno | 14 - contract/r/gnoswap/position/utils_test.gno | 61 ++-- .../protocol_fee/protocol_fee_test.gno | 30 +- .../tests/0_init_token_register_test.gno | 144 --------- .../protocol_fee/tests/_helper_test.gno | 47 --- .../token_list_with_amount_test.gno | 4 +- contract/r/gnoswap/router/_helper_test.gno | 140 +++++---- contract/r/gnoswap/router/base.gno | 3 +- contract/r/gnoswap/router/exact_in_test.gno | 14 +- contract/r/gnoswap/router/router.gno | 4 +- contract/r/gnoswap/router/swap_inner_test.gno | 23 +- contract/r/gnoswap/router/swap_multi_test.gno | 29 +- .../r/gnoswap/router/swap_single_test.gno | 12 +- contract/r/gnoswap/router/utils.gno | 13 - contract/r/gnoswap/router/wrap_unwrap.gno | 5 +- contract/r/gnoswap/staker/_helper_test.gno | 140 +++++---- ...ge_block_time_change_from_gns_filetest.gno | 10 +- .../no_position_to_give_reward_filetest.gno | 14 +- ..._and_change_to_tier3_internal_filetest.gno | 12 +- ...to_tier2_and_removed_internal_filetest.gno | 12 +- ...range_change_by_swap_external_filetest.gno | 32 +- ...range_change_by_swap_internal_filetest.gno | 28 +- ...by_collecting_reward_external_filetest.gno | 20 +- ...by_collecting_reward_internal_filetest.gno | 12 +- .../single_gns_external_ends_filetest.gno | 16 +- ...osition_stake_unstake_restake_filetest.gno | 14 +- ...tion_stake_unstake_same_block_filetest.gno | 10 +- ...by_staking_unstaking_external_filetest.gno | 16 +- ...by_staking_unstaking_internal_filetest.gno | 12 +- contract/r/gnoswap/staker/getter.gno | 12 +- .../gnoswap/staker/protocol_fee_unstaking.gno | 2 +- .../reward_calculation_pool_tier_test.gno | 15 +- contract/r/gnoswap/staker/staker.gno | 6 +- .../staker/staker_external_incentive.gno | 6 +- contract/r/gnoswap/staker/utils.gno | 13 - contract/r/gnoswap/staker/utils_test.gno | 25 -- .../r/gnoswap/staker/warp_unwrap_test.gno | 7 +- contract/r/gnoswap/staker/wrap_unwrap.gno | 6 +- contract/r/gnoswap/test_token/bar/bar.gno | 40 +-- contract/r/gnoswap/test_token/baz/baz.gno | 40 +-- contract/r/gnoswap/test_token/foo/foo.gno | 42 +-- contract/r/gnoswap/test_token/obl/obl.gno | 40 +-- contract/r/gnoswap/test_token/qux/qux.gno | 40 +-- contract/r/gnoswap/test_token/usdc/usdc.gno | 40 +-- 94 files changed, 961 insertions(+), 1840 deletions(-) delete mode 100644 contract/r/gnoswap/community_pool/tests/init_token_register_test.gno delete mode 100644 contract/r/gnoswap/community_pool/tests/init_variable_and_helper_test.gno delete mode 100644 contract/r/gnoswap/protocol_fee/tests/0_init_token_register_test.gno delete mode 100644 contract/r/gnoswap/protocol_fee/tests/_helper_test.gno diff --git a/contract/r/gnoswap/community_pool/community_pool_test.gno b/contract/r/gnoswap/community_pool/community_pool_test.gno index e077036ec..6d5e136e1 100644 --- a/contract/r/gnoswap/community_pool/community_pool_test.gno +++ b/contract/r/gnoswap/community_pool/community_pool_test.gno @@ -62,7 +62,7 @@ func TestTransferTokenByAdmin(t *testing.T) { name: "panic if not enough balance", setup: func() { std.TestSetRealm(adminRealm) - gns.Transfer(common.AddrToUser(consts.COMMUNITY_POOL_ADDR), 10_000) + gns.Transfer(consts.COMMUNITY_POOL_ADDR, 10_000) }, caller: adminRealm, tokenPath: consts.GNS_PATH, @@ -95,9 +95,9 @@ func TestTransferTokenByAdmin(t *testing.T) { TransferTokenByAdmin(tt.tokenPath, tt.to, tt.amount) }) } else { - receiverOldBalance := gns.BalanceOf(common.AddrToUser(tt.to)) + receiverOldBalance := gns.BalanceOf(tt.to) TransferTokenByAdmin(tt.tokenPath, tt.to, tt.amount) - receiverNewBalance := gns.BalanceOf(common.AddrToUser(tt.to)) + receiverNewBalance := gns.BalanceOf(tt.to) uassert.Equal(t, receiverNewBalance-receiverOldBalance, tt.amount) } }) @@ -175,9 +175,9 @@ func TestTransferToken(t *testing.T) { TransferToken(tt.tokenPath, tt.to, tt.amount) }) } else { - receiverOldBalance := gns.BalanceOf(common.AddrToUser(tt.to)) + receiverOldBalance := gns.BalanceOf(tt.to) TransferToken(tt.tokenPath, tt.to, tt.amount) - receiverNewBalance := gns.BalanceOf(common.AddrToUser(tt.to)) + receiverNewBalance := gns.BalanceOf(tt.to) uassert.Equal(t, receiverNewBalance-receiverOldBalance, tt.amount) } }) diff --git a/contract/r/gnoswap/community_pool/tests/init_token_register_test.gno b/contract/r/gnoswap/community_pool/tests/init_token_register_test.gno deleted file mode 100644 index 1af1b3351..000000000 --- a/contract/r/gnoswap/community_pool/tests/init_token_register_test.gno +++ /dev/null @@ -1,143 +0,0 @@ -package community_pool - -import ( - "std" - - "gno.land/r/onbloc/foo" - - "gno.land/r/onbloc/bar" - - "gno.land/r/onbloc/baz" - - "gno.land/r/onbloc/qux" - - "gno.land/r/demo/wugnot" - - "gno.land/r/onbloc/obl" - - "gno.land/r/gnoswap/v1/gns" - - "gno.land/r/gnoswap/v1/consts" - - pusers "gno.land/p/demo/users" -) - -type FooToken struct{} - -func (FooToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return foo.Transfer -} -func (FooToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return foo.TransferFrom -} -func (FooToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return foo.BalanceOf -} -func (FooToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return foo.Approve -} - -type BarToken struct{} - -func (BarToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return bar.Transfer -} -func (BarToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return bar.TransferFrom -} -func (BarToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return bar.BalanceOf -} -func (BarToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return bar.Approve -} - -type BazToken struct{} - -func (BazToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return baz.Transfer -} -func (BazToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return baz.TransferFrom -} -func (BazToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return baz.BalanceOf -} -func (BazToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return baz.Approve -} - -type QuxToken struct{} - -func (QuxToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return qux.Transfer -} -func (QuxToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return qux.TransferFrom -} -func (QuxToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return qux.BalanceOf -} -func (QuxToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return qux.Approve -} - -type WugnotToken struct{} - -func (WugnotToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return wugnot.Transfer -} -func (WugnotToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return wugnot.TransferFrom -} -func (WugnotToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return wugnot.BalanceOf -} -func (WugnotToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return wugnot.Approve -} - -type OBLToken struct{} - -func (OBLToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return obl.Transfer -} -func (OBLToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return obl.TransferFrom -} -func (OBLToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return obl.BalanceOf -} -func (OBLToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return obl.Approve -} - -type GNSToken struct{} - -func (GNSToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return gns.Transfer -} - -func (GNSToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return gns.TransferFrom -} - -func (GNSToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return gns.BalanceOf -} - -func (GNSToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return gns.Approve -} - -func init() { - std.TestSetRealm(std.NewUserRealm(consts.TOKEN_REGISTER)) - - RegisterGRC20Interface("gno.land/r/onbloc/bar", BarToken{}) - RegisterGRC20Interface("gno.land/r/onbloc/foo", FooToken{}) - RegisterGRC20Interface("gno.land/r/onbloc/baz", BazToken{}) - RegisterGRC20Interface("gno.land/r/onbloc/qux", QuxToken{}) - RegisterGRC20Interface("gno.land/r/demo/wugnot", WugnotToken{}) - RegisterGRC20Interface("gno.land/r/onbloc/obl", OBLToken{}) - RegisterGRC20Interface("gno.land/r/gnoswap/v1/gns", GNSToken{}) -} diff --git a/contract/r/gnoswap/community_pool/tests/init_variable_and_helper_test.gno b/contract/r/gnoswap/community_pool/tests/init_variable_and_helper_test.gno deleted file mode 100644 index 2cfb12f16..000000000 --- a/contract/r/gnoswap/community_pool/tests/init_variable_and_helper_test.gno +++ /dev/null @@ -1,31 +0,0 @@ -package community_pool - -import ( - "std" - - "gno.land/r/gnoswap/v1/consts" -) - -var ( - admin std.Address = consts.ADMIN - - fooPath string = "gno.land/r/onbloc/foo" - barPath string = "gno.land/r/onbloc/bar" - bazPath string = "gno.land/r/onbloc/baz" - quxPath string = "gno.land/r/onbloc/qux" - - oblPath string = "gno.land/r/onbloc/obl" - - fee100 uint32 = 100 - fee500 uint32 = 500 - fee3000 uint32 = 3000 - - maxApprove uint64 = 18446744073709551615 -) - -// Realms to mock frames -var ( - adminRealm = std.NewUserRealm(admin) - posRealm = std.NewCodeRealm(consts.POSITION_PATH) - rouRealm = std.NewCodeRealm(consts.ROUTER_PATH) -) diff --git a/contract/r/gnoswap/emission/_helper_test.gno b/contract/r/gnoswap/emission/_helper_test.gno index 24dd4128e..ad81b8ec3 100644 --- a/contract/r/gnoswap/emission/_helper_test.gno +++ b/contract/r/gnoswap/emission/_helper_test.gno @@ -40,5 +40,5 @@ func resetObject(t *testing.T) { func gnsBalance(t *testing.T, addr std.Address) uint64 { t.Helper() - return gns.BalanceOf(a2u(addr)) + return gns.BalanceOf(addr) } diff --git a/contract/r/gnoswap/emission/distribution.gno b/contract/r/gnoswap/emission/distribution.gno index 596efd2af..473517cf4 100644 --- a/contract/r/gnoswap/emission/distribution.gno +++ b/contract/r/gnoswap/emission/distribution.gno @@ -4,11 +4,11 @@ import ( "std" "strconv" - "gno.land/r/gnoswap/v1/consts" - "gno.land/r/gnoswap/v1/gns" - "gno.land/p/demo/avl" "gno.land/p/demo/ufmt" + + "gno.land/r/gnoswap/v1/consts" + "gno.land/r/gnoswap/v1/gns" ) const ( @@ -176,22 +176,22 @@ func calculateAmount(amount, bptPct uint64) uint64 { func transferToTarget(target int, amount uint64) { switch target { case LIQUIDITY_STAKER: - gns.Transfer(a2u(consts.STAKER_ADDR), amount) + gns.Transfer(consts.STAKER_ADDR, amount) distributedToStaker += amount accuDistributedToStaker += amount case DEVOPS: - gns.Transfer(a2u(consts.DEV_OPS), amount) + gns.Transfer(consts.DEV_OPS, amount) distributedToDevOps += amount accuDistributedToDevOps += amount case COMMUNITY_POOL: - gns.Transfer(a2u(consts.COMMUNITY_POOL_ADDR), amount) + gns.Transfer(consts.COMMUNITY_POOL_ADDR, amount) distributedToCommunityPool += amount accuDistributedToCommunityPool += amount case GOV_STAKER: - gns.Transfer(a2u(consts.GOV_STAKER_ADDR), amount) + gns.Transfer(consts.GOV_STAKER_ADDR, amount) distributedToGovStaker += amount accuDistributedToGovStaker += amount diff --git a/contract/r/gnoswap/emission/distribution_test.gno b/contract/r/gnoswap/emission/distribution_test.gno index a49bc16b7..0177f529b 100644 --- a/contract/r/gnoswap/emission/distribution_test.gno +++ b/contract/r/gnoswap/emission/distribution_test.gno @@ -264,7 +264,7 @@ func TestTransferToTarget(t *testing.T) { target: LIQUIDITY_STAKER, setup: func() { std.TestSetRealm(adminRealm) - gns.Transfer(a2u(consts.EMISSION_ADDR), 100000) // give enough balance for emission + gns.Transfer(consts.EMISSION_ADDR, 100000) // give enough balance for emission }, amount: 100, verify: func() { diff --git a/contract/r/gnoswap/emission/emission.gno b/contract/r/gnoswap/emission/emission.gno index c91f41b7c..a6b5760bd 100644 --- a/contract/r/gnoswap/emission/emission.gno +++ b/contract/r/gnoswap/emission/emission.gno @@ -27,7 +27,7 @@ func MintAndDistributeGns() uint64 { return 0 } // Mint new tokens and add any leftover amounts from previous distribution - mintedEmissionRewardAmount := gns.MintGns(a2u(consts.EMISSION_ADDR)) + mintedEmissionRewardAmount := gns.MintGns(consts.EMISSION_ADDR) if hasLeftGNSAmount() { mintedEmissionRewardAmount += GetLeftGNSAmount() setLeftGNSAmount(0) diff --git a/contract/r/gnoswap/emission/utils.gno b/contract/r/gnoswap/emission/utils.gno index 4fefbb3e7..b69946535 100644 --- a/contract/r/gnoswap/emission/utils.gno +++ b/contract/r/gnoswap/emission/utils.gno @@ -5,18 +5,12 @@ import ( "strconv" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/common" ) const MAX_BPS_PCT uint64 = 10000 -// a2u converts std.Address to pusers.AddressOrName. -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} - // getPrevRealm returns object of the previous realm. func getPrevRealm() std.Realm { return std.PrevRealm() diff --git a/contract/r/gnoswap/gnft/utils.gno b/contract/r/gnoswap/gnft/utils.gno index 0e75908cd..d30832e3a 100644 --- a/contract/r/gnoswap/gnft/utils.gno +++ b/contract/r/gnoswap/gnft/utils.gno @@ -5,7 +5,6 @@ import ( "gno.land/p/demo/grc/grc721" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" ) // getPrevAsString returns the address and package path of the previous realm. @@ -19,18 +18,6 @@ func getPrevAddr() std.Address { return std.PrevRealm().Addr() } -// a2u converts std.Address to pusers.AddressOrName. -// pusers is a package that contains the user-related functions. -// -// Input: -// - addr: the address to convert -// -// Output: -// - pusers.AddressOrName: the converted address -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} - // tid converts uint64 to grc721.TokenID. // // Input: diff --git a/contract/r/gnoswap/gns/gns.gno b/contract/r/gnoswap/gns/gns.gno index 614da7e8b..8dff35b46 100644 --- a/contract/r/gnoswap/gns/gns.gno +++ b/contract/r/gnoswap/gns/gns.gno @@ -7,12 +7,9 @@ import ( "gno.land/p/demo/grc/grc20" "gno.land/p/demo/ownable" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/demo/grc20reg" - "gno.land/r/demo/users" - "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" ) @@ -83,24 +80,19 @@ func AllowanceOfAddress(owner, spender std.Address) uint64 { return Token.Allowance(owner, spender) } -func BalanceOf(owner pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - return UserTeller.BalanceOf(ownerAddr) +func BalanceOf(owner std.Address) uint64 { + return UserTeller.BalanceOf(owner) } -func Allowance(owner, spender pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - spenderAddr := users.Resolve(spender) - return UserTeller.Allowance(ownerAddr, spenderAddr) +func Allowance(owner, spender std.Address) uint64 { + return UserTeller.Allowance(owner, spender) } -func SpendAllowance(owner, spender pusers.AddressOrName, amount uint64) { - ownerAddr := users.Resolve(owner) - spenderAddr := users.Resolve(spender) - checkErr(privateLedger.SpendAllowance(ownerAddr, spenderAddr, amount)) +func SpendAllowance(owner, spender std.Address, amount uint64) { + checkErr(privateLedger.SpendAllowance(owner, spender, amount)) } -func MintGns(address pusers.AddressOrName) uint64 { +func MintGns(address std.Address) uint64 { lastGNSMintedHeight := GetLastMintedHeight() currentHeight := std.GetHeight() @@ -123,7 +115,7 @@ func MintGns(address pusers.AddressOrName) uint64 { setLeftEmissionAmount(GetLeftEmissionAmount() - amountToMint) // mint calculated amount to address - err := privateLedger.Mint(users.Resolve(address), amountToMint) + err := privateLedger.Mint(address, amountToMint) if err != nil { panic(err.Error()) } @@ -142,10 +134,9 @@ func MintGns(address pusers.AddressOrName) uint64 { return amountToMint } -func Burn(from pusers.AddressOrName, amount uint64) { +func Burn(from std.Address, amount uint64) { owner.AssertCallerIsOwner() - fromAddr := users.Resolve(from) - checkErr(privateLedger.Burn(fromAddr, amount)) + checkErr(privateLedger.Burn(from, amount)) burnAmount += amount @@ -155,26 +146,22 @@ func Burn(from pusers.AddressOrName, amount uint64) { "prevAddr", prevAddr, "prevRealm", prevPkgPath, "burnedBlockHeight", formatInt(std.GetHeight()), - "burnFrom", fromAddr.String(), + "burnFrom", from.String(), "burnedGNSAmount", formatUint(amount), "accumBurnedGNSAmount", formatUint(GetBurnAmount()), ) } -func Transfer(to pusers.AddressOrName, amount uint64) { - toAddr := users.Resolve(to) - checkErr(UserTeller.Transfer(toAddr, amount)) +func Transfer(to std.Address, amount uint64) { + checkErr(UserTeller.Transfer(to, amount)) } -func Approve(spender pusers.AddressOrName, amount uint64) { - spenderAddr := users.Resolve(spender) - checkErr(UserTeller.Approve(spenderAddr, amount)) +func Approve(spender std.Address, amount uint64) { + checkErr(UserTeller.Approve(spender, amount)) } -func TransferFrom(from, to pusers.AddressOrName, amount uint64) { - fromAddr := users.Resolve(from) - toAddr := users.Resolve(to) - checkErr(UserTeller.TransferFrom(fromAddr, toAddr, amount)) +func TransferFrom(from, to std.Address, amount uint64) { + checkErr(UserTeller.TransferFrom(from, to, amount)) } func Render(path string) string { @@ -185,9 +172,8 @@ func Render(path string) string { case path == "": return Token.RenderHome() case c == 2 && parts[0] == "balance": - owner := pusers.AddressOrName(parts[1]) - ownerAddr := users.Resolve(owner) - balance := UserTeller.BalanceOf(ownerAddr) + owner := std.Address(parts[1]) + balance := UserTeller.BalanceOf(owner) return ufmt.Sprintf("%d\n", balance) default: return "404\n" diff --git a/contract/r/gnoswap/gns/gns_test.gno b/contract/r/gnoswap/gns/gns_test.gno index 1c72e2729..0cc34c747 100644 --- a/contract/r/gnoswap/gns/gns_test.gno +++ b/contract/r/gnoswap/gns/gns_test.gno @@ -7,7 +7,6 @@ import ( "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/consts" ) @@ -73,7 +72,7 @@ func TestAllowanceOfAddress(t *testing.T) { uassert.Equal(t, uint64(0), AllowanceOfAddress(consts.ADMIN, alice)) std.TestSetOrigCaller(consts.ADMIN) - Approve(pusers.AddressOrName(alice), uint64(123)) + Approve(alice, uint64(123)) uassert.Equal(t, uint64(123), AllowanceOfAddress(consts.ADMIN, alice)) }, ) @@ -96,7 +95,7 @@ func TestAllowanceOfAddress(t *testing.T) { } func TestBalanceOf(t *testing.T) { - uassert.Equal(t, INITIAL_MINT_AMOUNT, BalanceOf(a2u(consts.ADMIN))) + uassert.Equal(t, INITIAL_MINT_AMOUNT, BalanceOf(consts.ADMIN)) } func TestSpendAllowance(t *testing.T) { @@ -104,17 +103,17 @@ func TestSpendAllowance(t *testing.T) { "should spend allowance", func(t *testing.T) { std.TestSetOrigCaller(consts.ADMIN) - Approve(a2u(alice), uint64(123)) + Approve(alice, uint64(123)) - SpendAllowance(a2u(consts.ADMIN), a2u(alice), uint64(23)) - uassert.Equal(t, uint64(100), Allowance(a2u(consts.ADMIN), a2u(alice))) + SpendAllowance(consts.ADMIN, alice, uint64(23)) + uassert.Equal(t, uint64(100), Allowance(consts.ADMIN, alice)) }, ) t.Run( "should panic if address is not valid", func(t *testing.T) { uassert.PanicsWithMessage(t, "invalid address", func() { - SpendAllowance("0xabcdefg", a2u(alice), uint64(123)) + SpendAllowance("0xabcdefg", alice, uint64(123)) }) }, ) @@ -122,7 +121,7 @@ func TestSpendAllowance(t *testing.T) { "should panic if spender is not valid", func(t *testing.T) { uassert.PanicsWithMessage(t, "invalid address", func() { - SpendAllowance(a2u(consts.ADMIN), "0xabcdefg", uint64(123)) + SpendAllowance(consts.ADMIN, "0xabcdefg", uint64(123)) }) }, ) @@ -130,7 +129,7 @@ func TestSpendAllowance(t *testing.T) { "should panic if allowance is not enough", func(t *testing.T) { uassert.PanicsWithMessage(t, "insufficient allowance", func() { - SpendAllowance(a2u(consts.ADMIN), a2u(alice), uint64(123)) + SpendAllowance(consts.ADMIN, alice, uint64(123)) }) }, ) @@ -289,33 +288,33 @@ func TestGrc20Methods(t *testing.T) { { name: "BalanceOf(admin)", fn: func() { - uassert.Equal(t, INITIAL_MINT_AMOUNT, BalanceOf(a2u(consts.ADMIN))) + uassert.Equal(t, INITIAL_MINT_AMOUNT, BalanceOf(consts.ADMIN)) }, }, { name: "BalanceOf(alice)", fn: func() { - uassert.Equal(t, uint64(0), BalanceOf(a2u(alice))) + uassert.Equal(t, uint64(0), BalanceOf(alice)) }, }, { name: "Allowance(admin, alice)", fn: func() { - uassert.Equal(t, uint64(0), Allowance(a2u(consts.ADMIN), a2u(alice))) + uassert.Equal(t, uint64(0), Allowance(consts.ADMIN, alice)) }, }, { name: "MintGns success", fn: func() { std.TestSetRealm(emissionRealm) - MintGns(a2u(consts.ADMIN)) + MintGns(consts.ADMIN) }, }, { name: "MintGns without permission should panic", fn: func() { std.TestSkipHeights(1) - MintGns(a2u(consts.ADMIN)) + MintGns(consts.ADMIN) }, shouldPanic: true, panicMsg: `caller(g1wymu47drhr0kuq2098m792lytgtj2nyx77yrsm) has no permission`, @@ -324,13 +323,13 @@ func TestGrc20Methods(t *testing.T) { name: "Burn success", fn: func() { std.TestSetRealm(adminRealm) - Burn(a2u(consts.ADMIN), uint64(1)) + Burn(consts.ADMIN, uint64(1)) }, }, { name: "Burn without permission should panic", fn: func() { - Burn(a2u(consts.ADMIN), uint64(1)) + Burn(consts.ADMIN, uint64(1)) }, shouldPanic: true, panicMsg: `ownable: caller is not owner`, @@ -339,14 +338,14 @@ func TestGrc20Methods(t *testing.T) { name: "Transfer success", fn: func() { std.TestSetRealm(adminRealm) - Transfer(a2u(alice), uint64(1)) + Transfer(alice, uint64(1)) }, }, { name: "Transfer without enough balance should panic", fn: func() { std.TestSetRealm(std.NewUserRealm(alice)) - Transfer(a2u(bob), uint64(1)) + Transfer(bob, uint64(1)) }, shouldPanic: true, panicMsg: `insufficient balance`, @@ -355,7 +354,7 @@ func TestGrc20Methods(t *testing.T) { name: "Transfer to self should panic", fn: func() { std.TestSetRealm(adminRealm) - Transfer(a2u(consts.ADMIN), uint64(1)) + Transfer(consts.ADMIN, uint64(1)) }, shouldPanic: true, panicMsg: `cannot send transfer to self`, @@ -365,21 +364,21 @@ func TestGrc20Methods(t *testing.T) { fn: func() { // approve first std.TestSetRealm(adminRealm) - Approve(a2u(alice), uint64(1)) + Approve(alice, uint64(1)) // alice transfer admin's balance to bob std.TestSetRealm(std.NewUserRealm(alice)) - TransferFrom(a2u(consts.ADMIN), a2u(bob), uint64(1)) + TransferFrom(consts.ADMIN, bob, uint64(1)) }, }, { name: "TransferFrom without enough allowance should panic", fn: func() { std.TestSetRealm(adminRealm) - Approve(a2u(alice), uint64(1)) + Approve(alice, uint64(1)) std.TestSetRealm(std.NewUserRealm(alice)) - TransferFrom(a2u(consts.ADMIN), a2u(bob), uint64(2)) + TransferFrom(consts.ADMIN, bob, uint64(2)) }, shouldPanic: true, panicMsg: `insufficient allowance`, diff --git a/contract/r/gnoswap/gns/tests/z1_filetest.gno b/contract/r/gnoswap/gns/tests/z1_filetest.gno index d98424197..49aa99a3b 100644 --- a/contract/r/gnoswap/gns/tests/z1_filetest.gno +++ b/contract/r/gnoswap/gns/tests/z1_filetest.gno @@ -9,7 +9,6 @@ import ( "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/consts" "gno.land/r/gnoswap/v1/gns" @@ -35,7 +34,7 @@ func skip50Blocks() { uassert.Equal(t, std.GetHeight(), int64(173)) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - mintedAmount := gns.MintGns(a2u(user01Addr)) + mintedAmount := gns.MintGns(user01Addr) uassert.Equal(t, uint64(713470300), mintedAmount) // 14269406 * 50 uassert.Equal(t, uint64(713470300), gns.GetMintedEmissionAmount()) } @@ -63,7 +62,7 @@ func blockTime2500ms() { std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) std.TestSkipHeights(1) - mintedAmount := gns.MintGns(a2u(user01Addr)) + mintedAmount := gns.MintGns(user01Addr) uassert.Equal(t, uint64(17836757), mintedAmount) uassert.Equal(t, uint64(713470300+17836757), gns.GetMintedEmissionAmount()) // 731307057 } @@ -75,7 +74,7 @@ func reachAlmostFirstHalving() { std.TestSkipHeights(blockLeftUntilEnd - 1) // 1 block left until first halving year ends std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) + gns.MintGns(user01Addr) uassert.Equal(t, uint64(224999969664063), gns.GetMintedEmissionAmount()) // 224999969664063 - 731307057 = 224999238357006 @@ -85,7 +84,7 @@ func reachAlmostFirstHalving() { func reachExactFirstHalving() { std.TestSkipHeights(1) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) + gns.MintGns(user01Addr) // minted all amount for first halving year uassert.Equal(t, uint64(225000000000000), gns.GetMintedEmissionAmount()) @@ -104,10 +103,6 @@ func startSecondHalving() { uassert.Equal(t, uint64(14269406), amount) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) + gns.MintGns(user01Addr) uassert.Equal(t, uint64(225000000000000+14269406), gns.GetMintedEmissionAmount()) } - -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} diff --git a/contract/r/gnoswap/gns/tests/z2_filetest.gno b/contract/r/gnoswap/gns/tests/z2_filetest.gno index c5ec13db1..41396699d 100644 --- a/contract/r/gnoswap/gns/tests/z2_filetest.gno +++ b/contract/r/gnoswap/gns/tests/z2_filetest.gno @@ -9,7 +9,6 @@ import ( "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/consts" "gno.land/r/gnoswap/v1/gns" @@ -35,7 +34,7 @@ func skip50Blocks() { uassert.Equal(t, std.GetHeight(), int64(173)) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) // 14269406 * 50 = 713470300 + gns.MintGns(user01Addr) // 14269406 * 50 = 713470300 uassert.Equal(t, uint64(713470300), gns.GetMintedEmissionAmount()) } @@ -62,7 +61,7 @@ func blockTime4000ms() { std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) std.TestSkipHeights(1) - mintedAmount := gns.MintGns(a2u(user01Addr)) // 28538812 + mintedAmount := gns.MintGns(user01Addr) // 28538812 uassert.Equal(t, uint64(713470300+28538812), gns.GetMintedEmissionAmount()) // 742009112 firstYearAmountPerBlock := gns.GetAmountPerBlockPerHalvingYear(1) @@ -95,7 +94,7 @@ func reachFirstHalving() { std.TestSkipHeights(7883974) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) + gns.MintGns(user01Addr) // minted all amount for first halving year uassert.Equal(t, uint64(225000000000000), gns.GetMintedEmissionAmount()) @@ -114,7 +113,7 @@ func startSecondHalving() { uassert.Equal(t, uint64(14269406), amount) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) + gns.MintGns(user01Addr) uassert.Equal(t, uint64(225000000000000+14269406), gns.GetMintedEmissionAmount()) } @@ -123,14 +122,10 @@ func reachSecondHalving() { std.TestSkipHeights(int64(blockLeftUntilEndOfYear02)) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) + gns.MintGns(user01Addr) // minted all amount until second halving year01Max := gns.GetHalvingYearMaxAmount(1) year02Max := gns.GetHalvingYearMaxAmount(2) uassert.Equal(t, year01Max+year02Max, gns.GetMintedEmissionAmount()) } - -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} diff --git a/contract/r/gnoswap/gns/tests/z3_filetest.gno b/contract/r/gnoswap/gns/tests/z3_filetest.gno index 1f81f34f7..4c96548ee 100644 --- a/contract/r/gnoswap/gns/tests/z3_filetest.gno +++ b/contract/r/gnoswap/gns/tests/z3_filetest.gno @@ -9,7 +9,6 @@ import ( "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/consts" "gno.land/r/gnoswap/v1/gns" @@ -36,7 +35,7 @@ func skip50Blocks() { uassert.Equal(t, std.GetHeight(), int64(173)) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) // 14269406 * 50 = 713470300 + gns.MintGns(user01Addr)) // 14269406 * 50 = 71347030 uassert.Equal(t, uint64(713470300), gns.GetMintedEmissionAmount()) } @@ -46,7 +45,7 @@ func blockTime4000ms() { std.TestSkipHeights(1) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) // 28538812 + gns.MintGns(user01Addr)) // 2853881 uassert.Equal(t, uint64(713470300+28538812), gns.GetMintedEmissionAmount()) // 742009112 // next halving year start/end block @@ -61,7 +60,7 @@ func reachAboutHalfOfFirstHalving() { std.TestSkipHeights(3941987) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) + gns.MintGns(user01Addr) // stil in first halving year year := gns.GetHalvingYearByHeight(std.GetHeight()) @@ -79,7 +78,7 @@ func reachFirstHalving() { std.TestSkipHeights(blockLeftUntilEndOfYear01) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) + gns.MintGns(user01Addr) // minted all amount for first halving year uassert.Equal(t, gns.GetHalvingYearMaxAmount(1), gns.GetMintedEmissionAmount()) @@ -99,10 +98,6 @@ func startSecondHalving() { uassert.Equal(t, uint64(14269406), amount) std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - gns.MintGns(a2u(user01Addr)) + gns.MintGns(user01Addr) uassert.Equal(t, uint64(225000000000000+14269406), gns.GetMintedEmissionAmount()) } - -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} diff --git a/contract/r/gnoswap/gns/tests/z4_filetest.gno b/contract/r/gnoswap/gns/tests/z4_filetest.gno index f4ea61add..c31d1aaef 100644 --- a/contract/r/gnoswap/gns/tests/z4_filetest.gno +++ b/contract/r/gnoswap/gns/tests/z4_filetest.gno @@ -11,7 +11,6 @@ import ( "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/consts" "gno.land/r/gnoswap/v1/gns" @@ -36,7 +35,7 @@ func reachAlmostEndOfEmission() { std.TestSkipHeights(untilEnds - 10) // 10 blocks before end of emission std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) - minted := gns.MintGns(a2u(user01Addr)) + minted := gns.MintGns(user01Addr) // minted all amount for year 01 ~ 11 for year := int64(1); year <= 11; year++ { @@ -60,7 +59,7 @@ func skip50Blocks() { std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) std.TestSkipHeights(50) - gns.MintGns(a2u(user01Addr)) + gns.MintGns(user01Addr) // total supply totalSupply := gns.TotalSupply() @@ -76,7 +75,7 @@ func moreBlocksAfterEmissionEnds() { std.TestSkipHeights(10) // no gns will be minted after emission ends - minted := gns.MintGns(a2u(user01Addr)) + minted := gns.MintGns(user01Addr) uassert.Equal(t, uint64(0), minted) // total supply @@ -87,7 +86,3 @@ func moreBlocksAfterEmissionEnds() { mintedAmount := gns.GetMintedEmissionAmount() uassert.Equal(t, gns.MAX_EMISSION_AMOUNT, mintedAmount) } - -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} diff --git a/contract/r/gnoswap/gns/utils.gno b/contract/r/gnoswap/gns/utils.gno index 9a5069d59..988aa5e44 100644 --- a/contract/r/gnoswap/gns/utils.gno +++ b/contract/r/gnoswap/gns/utils.gno @@ -5,7 +5,6 @@ import ( "strconv" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" @@ -20,10 +19,6 @@ func getPrevAddr() std.Address { return std.PrevRealm().Addr() } -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} - func assertShouldNotBeHalted() { common.IsHalted() } diff --git a/contract/r/gnoswap/gov/governance/proposal.gno b/contract/r/gnoswap/gov/governance/proposal.gno index a0ba8de5a..b02489c8f 100644 --- a/contract/r/gnoswap/gov/governance/proposal.gno +++ b/contract/r/gnoswap/gov/governance/proposal.gno @@ -376,7 +376,7 @@ func (u *proposalStateUpdater) updateExecutionState() { } func checkEnoughXGnsToPropose(proposer std.Address) (bool, uint64, uint64) { - xGNSBalance := xgns.BalanceOf(a2u(proposer)) + xGNSBalance := xgns.BalanceOf(proposer) if xGNSBalance < config.ProposalCreationThreshold { return false, xGNSBalance, config.ProposalCreationThreshold diff --git a/contract/r/gnoswap/gov/governance/proposal_test.gno b/contract/r/gnoswap/gov/governance/proposal_test.gno index 2664d7a28..c7f0cb884 100644 --- a/contract/r/gnoswap/gov/governance/proposal_test.gno +++ b/contract/r/gnoswap/gov/governance/proposal_test.gno @@ -2,7 +2,6 @@ package governance import ( "std" - "strconv" "testing" "gno.land/p/demo/avl" @@ -146,7 +145,7 @@ func TestProposeCommunityPoolSpend(t *testing.T) { uassert.NoError(t, err) - prop, exists := proposals.Get(fomatUint(pid)) + prop, exists := proposals.Get(formatUint(pid)) uassert.True(t, exists) proposal := prop.(ProposalInfo) @@ -284,11 +283,11 @@ func TestUpdateProposalsState(t *testing.T) { proposals = avl.NewTree() proposal := tt.setupProposal(tt.currentTime) - proposals.Set(fomatUint(1), proposal) + proposals.Set(formatUint(uint32(1)), proposal) updateProposalsState() - updatedProposal, exists := proposals.Get(fomatUint(1)) + updatedProposal, exists := proposals.Get(formatUint(uint32(1))) uassert.True(t, exists) tt.validate(t, updatedProposal.(ProposalInfo)) }) @@ -339,7 +338,7 @@ func TestProposeParameterChange(t *testing.T) { uassert.NoError(t, err) - prop, exists := proposals.Get(fomatUint(pid)) + prop, exists := proposals.Get(formatUint(pid)) uassert.True(t, exists) proposal := prop.(ProposalInfo) diff --git a/contract/r/gnoswap/gov/governance/tests/_0_init_token_register_test.gno b/contract/r/gnoswap/gov/governance/tests/_0_init_token_register_test.gno index 77410f32f..dd5193129 100644 --- a/contract/r/gnoswap/gov/governance/tests/_0_init_token_register_test.gno +++ b/contract/r/gnoswap/gov/governance/tests/_0_init_token_register_test.gno @@ -18,138 +18,131 @@ import ( "gno.land/r/gnoswap/v1/gns" "gno.land/r/gnoswap/v1/consts" - - cp "gno.land/r/gnoswap/v1/community_pool" - gs "gno.land/r/gnoswap/v1/gov/staker" - lp "gno.land/r/gnoswap/v1/launchpad" - pf "gno.land/r/gnoswap/v1/protocol_fee" - - pusers "gno.land/p/demo/users" ) type FooToken struct{} -func (FooToken) Transfer() func(to pusers.AddressOrName, amount uint64) { +func (FooToken) Transfer() func(to std.Address, amount uint64) { return foo.Transfer } -func (FooToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { +func (FooToken) TransferFrom() func(from, to std.Address, amount uint64) { return foo.TransferFrom } -func (FooToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { +func (FooToken) BalanceOf() func(owner std.Address) uint64 { return foo.BalanceOf } -func (FooToken) Approve() func(spender pusers.AddressOrName, amount uint64) { +func (FooToken) Approve() func(spender std.Address, amount uint64) { return foo.Approve } type BarToken struct{} -func (BarToken) Transfer() func(to pusers.AddressOrName, amount uint64) { +func (BarToken) Transfer() func(to std.Address, amount uint64) { return bar.Transfer } -func (BarToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { +func (BarToken) TransferFrom() func(from, to std.Address, amount uint64) { return bar.TransferFrom } -func (BarToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { +func (BarToken) BalanceOf() func(owner std.Address) uint64 { return bar.BalanceOf } -func (BarToken) Approve() func(spender pusers.AddressOrName, amount uint64) { +func (BarToken) Approve() func(spender std.Address, amount uint64) { return bar.Approve } type BazToken struct{} -func (BazToken) Transfer() func(to pusers.AddressOrName, amount uint64) { +func (BazToken) Transfer() func(to std.Address, amount uint64) { return baz.Transfer } -func (BazToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { +func (BazToken) TransferFrom() func(from, to std.Address, amount uint64) { return baz.TransferFrom } -func (BazToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { +func (BazToken) BalanceOf() func(owner std.Address) uint64 { return baz.BalanceOf } -func (BazToken) Approve() func(spender pusers.AddressOrName, amount uint64) { +func (BazToken) Approve() func(spender std.Address, amount uint64) { return baz.Approve } type QuxToken struct{} -func (QuxToken) Transfer() func(to pusers.AddressOrName, amount uint64) { +func (QuxToken) Transfer() func(to std.Address, amount uint64) { return qux.Transfer } -func (QuxToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { +func (QuxToken) TransferFrom() func(from, to std.Address, amount uint64) { return qux.TransferFrom } -func (QuxToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { +func (QuxToken) BalanceOf() func(owner std.Address) uint64 { return qux.BalanceOf } -func (QuxToken) Approve() func(spender pusers.AddressOrName, amount uint64) { +func (QuxToken) Approve() func(spender std.Address, amount uint64) { return qux.Approve } type WugnotToken struct{} -func (WugnotToken) Transfer() func(to pusers.AddressOrName, amount uint64) { +func (WugnotToken) Transfer() func(to std.Address, amount uint64) { return wugnot.Transfer } -func (WugnotToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { +func (WugnotToken) TransferFrom() func(from, to std.Address, amount uint64) { return wugnot.TransferFrom } -func (WugnotToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { +func (WugnotToken) BalanceOf() func(owner std.Address) uint64 { return wugnot.BalanceOf } -func (WugnotToken) Approve() func(spender pusers.AddressOrName, amount uint64) { +func (WugnotToken) Approve() func(spender std.Address, amount uint64) { return wugnot.Approve } type OBLToken struct{} -func (OBLToken) Transfer() func(to pusers.AddressOrName, amount uint64) { +func (OBLToken) Transfer() func(to std.Address, amount uint64) { return obl.Transfer } -func (OBLToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { +func (OBLToken) TransferFrom() func(from, to std.Address, amount uint64) { return obl.TransferFrom } -func (OBLToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { +func (OBLToken) BalanceOf() func(owner std.Address) uint64 { return obl.BalanceOf } -func (OBLToken) Approve() func(spender pusers.AddressOrName, amount uint64) { +func (OBLToken) Approve() func(spender std.Address, amount uint64) { return obl.Approve } type GNSToken struct{} -func (GNSToken) Transfer() func(to pusers.AddressOrName, amount uint64) { +func (GNSToken) Transfer() func(to std.Address, amount uint64) { return gns.Transfer } -func (GNSToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { +func (GNSToken) TransferFrom() func(from, to std.Address, amount uint64) { return gns.TransferFrom } -func (GNSToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { +func (GNSToken) BalanceOf() func(owner std.Address) uint64 { return gns.BalanceOf } -func (GNSToken) Approve() func(spender pusers.AddressOrName, amount uint64) { +func (GNSToken) Approve() func(spender std.Address, amount uint64) { return gns.Approve } diff --git a/contract/r/gnoswap/gov/governance/utils.gno b/contract/r/gnoswap/gov/governance/utils.gno index e0fda06ab..986e4c885 100644 --- a/contract/r/gnoswap/gov/governance/utils.gno +++ b/contract/r/gnoswap/gov/governance/utils.gno @@ -9,7 +9,6 @@ import ( "gno.land/p/demo/json" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" ) func mustGetProposal(proposalId uint64) ProposalInfo { @@ -102,10 +101,6 @@ func prevRealm() string { return std.PrevRealm().PkgPath() } -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} - func getPrev() (string, string) { prev := std.PrevRealm() return prev.Addr().String(), prev.PkgPath() diff --git a/contract/r/gnoswap/gov/governance/vote_test.gno b/contract/r/gnoswap/gov/governance/vote_test.gno index 877f094d9..23bbe6dcb 100644 --- a/contract/r/gnoswap/gov/governance/vote_test.gno +++ b/contract/r/gnoswap/gov/governance/vote_test.gno @@ -34,7 +34,7 @@ func TestVote(t *testing.T) { name: "Successful YES vote", setup: func() uint64 { pid := uint64(1) - proposals.Set(fomatUint(pid), ProposalInfo{ + proposals.Set(formatUint(pid), ProposalInfo{ ConfigVersion: 1, State: ProposalState{ Created: true, @@ -51,7 +51,7 @@ func TestVote(t *testing.T) { yes: true, expectError: false, validate: func(t *testing.T, voteKey string) { - prop, exists := proposals.Get(fomatUint(1)) + prop, exists := proposals.Get(formatUint(1)) if !exists { t.Error("Proposal was not stored") return @@ -84,7 +84,7 @@ func TestVote(t *testing.T) { name: "Successful NO vote", setup: func() uint64 { pid := uint64(2) - proposals.Set(fomatUint(pid), ProposalInfo{ + proposals.Set(formatUint(pid), ProposalInfo{ ConfigVersion: 1, State: ProposalState{ Created: true, @@ -101,7 +101,7 @@ func TestVote(t *testing.T) { yes: false, expectError: false, validate: func(t *testing.T, voteKey string) { - prop, exists := proposals.Get(fomatUint(2)) + prop, exists := proposals.Get(formatUint(2)) if !exists { t.Error("Proposal was not stored") return @@ -115,7 +115,7 @@ func TestVote(t *testing.T) { name: "Vote before voting period starts", setup: func() uint64 { pid := uint64(3) - proposals.Set(fomatUint(pid), ProposalInfo{ + proposals.Set(formatUint(pid), ProposalInfo{ ConfigVersion: 1, State: ProposalState{ Created: true, @@ -133,7 +133,7 @@ func TestVote(t *testing.T) { name: "Vote on canceled proposal", setup: func() uint64 { pid := uint64(5) - proposals.Set(fomatUint(pid), ProposalInfo{ + proposals.Set(formatUint(pid), ProposalInfo{ ConfigVersion: 1, State: ProposalState{ Created: true, @@ -152,7 +152,7 @@ func TestVote(t *testing.T) { name: "Double voting attempt", setup: func() uint64 { pid := uint64(6) - proposals.Set(fomatUint(pid), ProposalInfo{ + proposals.Set(formatUint(pid), ProposalInfo{ ConfigVersion: 1, State: ProposalState{ Created: true, diff --git a/contract/r/gnoswap/gov/staker/api_delegation.gno b/contract/r/gnoswap/gov/staker/api_delegation.gno index caffce67c..52c2a51e4 100644 --- a/contract/r/gnoswap/gov/staker/api_delegation.gno +++ b/contract/r/gnoswap/gov/staker/api_delegation.gno @@ -64,5 +64,5 @@ func GetDelegationAmountFromTo(from, to std.Address) uint64 { // GetRealmGnsBalance returns the amount of GNS in the current realm. func GetRealmGnsBalance() uint64 { - return gns.BalanceOf(a2u(std.CurrentRealm().Addr())) + return gns.BalanceOf(std.CurrentRealm().Addr()) } diff --git a/contract/r/gnoswap/gov/staker/staker.gno b/contract/r/gnoswap/gov/staker/staker.gno index 934c86eee..dfa7144e9 100644 --- a/contract/r/gnoswap/gov/staker/staker.gno +++ b/contract/r/gnoswap/gov/staker/staker.gno @@ -71,7 +71,7 @@ func Delegate(to std.Address, amount uint64) { } caller := std.PrevRealm().Addr() - gnsBalance := gns.BalanceOf(a2u(caller)) + gnsBalance := gns.BalanceOf(caller) if gnsBalance < amount { panic(addDetailToError( errNotEnoughBalance, @@ -82,13 +82,13 @@ func Delegate(to std.Address, amount uint64) { rewardState.AddStake(uint64(std.GetHeight()), caller, amount, getCurrentBalance(), getCurrentProtocolFeeBalance()) // GNS // caller -> GovStaker - gns.TransferFrom(a2u(caller), a2u(std.CurrentRealm().Addr()), amount) + gns.TransferFrom(caller, std.CurrentRealm().Addr(), amount) // actual delegate delegate(to, amount) // xGNS mint to caller - xgns.Mint(a2u(caller), amount) + xgns.Mint(caller, amount) prevAddr, prevPkgPath := getPrev() std.Emit( @@ -140,7 +140,7 @@ func Redelegate(from, to std.Address, amount uint64) { caller := std.PrevRealm().Addr() - delegated := xgns.BalanceOf(a2u(caller)) + delegated := xgns.BalanceOf(caller) if delegated < amount { panic(addDetailToError( errNotEnoughBalance, @@ -191,7 +191,7 @@ func Undelegate(from std.Address, amount uint64) { } caller := std.PrevRealm().Addr() - delegated := xgns.BalanceOf(a2u(caller)) + delegated := xgns.BalanceOf(caller) if delegated < amount { panic(addDetailToError( @@ -203,9 +203,9 @@ func Undelegate(from std.Address, amount uint64) { reward, protocolFeeRewards := rewardState.RemoveStake(caller, amount, getCurrentBalance(), getCurrentProtocolFeeBalance()) // burn equivalent amount of xGNS - xgns.Burn(a2u(caller), amount) + xgns.Burn(caller, amount) - gns.Transfer(a2u(caller), reward) + gns.Transfer(caller, reward) for tokenPath, amount := range protocolFeeRewards { transferProtocolFee(tokenPath, from, amount) @@ -265,7 +265,7 @@ func CollectUndelegatedGns() uint64 { for _, locked := range lockedList { if currentTime >= locked.unlock { // passed 7 days // transfer GNS to caller - gns.Transfer(a2u(caller), locked.amount) + gns.Transfer(caller, locked.amount) lockedAmount -= locked.amount collected += locked.amount } else { @@ -318,10 +318,9 @@ func CollectReward() { // // still, this is a tangled with the policy issue, so should be discussed. - // TODO: if reward > 0 { - gns.Transfer(a2u(caller), reward) + gns.Transfer(caller, reward) std.Emit( "CollectEmissionReward", "prevAddr", prevAddr, @@ -367,7 +366,7 @@ func CollectRewardFromLaunchPad(to std.Address) { // TODO:: emissionReward, protocolFeeRewards := rewardState.Claim(to, getCurrentBalance(), getCurrentProtocolFeeBalance()) if emissionReward > 0 { - gns.Transfer(a2u(to), emissionReward) + gns.Transfer(to, emissionReward) std.Emit( "CollectEmissionFromLaunchPad", "prevAddr", prevAddr, @@ -389,7 +388,6 @@ func CollectRewardFromLaunchPad(to std.Address) { ) } - } func transferProtocolFee(tokenPath string, to std.Address, amount uint64) { diff --git a/contract/r/gnoswap/gov/staker/staker_test.gno b/contract/r/gnoswap/gov/staker/staker_test.gno index 02824c662..9de33eda7 100644 --- a/contract/r/gnoswap/gov/staker/staker_test.gno +++ b/contract/r/gnoswap/gov/staker/staker_test.gno @@ -6,13 +6,14 @@ import ( "testing" "time" + "gno.land/p/demo/testutils" + "gno.land/r/demo/wugnot" + "gno.land/r/gnoswap/v1/consts" "gno.land/r/gnoswap/v1/gns" "gno.land/r/gnoswap/v1/gov/xgns" ) -// Mock or define test realms/addresses if needed -/* var ( adminRealm = std.NewUserRealm(consts.ADMIN) userRealm = std.NewUserRealm(testutils.TestAddress("alice")) @@ -86,7 +87,7 @@ func ugnotDeposit(t *testing.T, addr std.Address, amount uint64) { banker.SendCoins(addr, wugnotAddr, std.Coins{{ugnotDenom, int64(amount)}}) wugnot.Deposit() } -*/ + func TestDelegate(t *testing.T) { std.TestSetOrigCaller(consts.ADMIN) SetRunning(true) @@ -95,16 +96,16 @@ func TestDelegate(t *testing.T) { { std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) std.TestSkipHeights(100) - gns.MintGns(a2u(userRealm.Addr())) // 2M gns + gns.MintGns(userRealm.Addr()) // 2M gns std.TestSetRealm(userRealm) to := makeFakeAddress("validator_1") amount := uint64(1_000_000) - gns.Approve(a2u(consts.GOV_STAKER_ADDR), amount) + gns.Approve(consts.GOV_STAKER_ADDR, amount) Delegate(to, amount) - minted := xgns.BalanceOf(a2u(userRealm.Addr())) + minted := xgns.BalanceOf(userRealm.Addr()) if minted != amount { t.Errorf("Delegate minted xGNS = %d, want %d", minted, amount) } @@ -416,7 +417,7 @@ func TestProtocolFee(t *testing.T) { func TestRedelegate(t *testing.T) { std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) std.TestSkipHeights(100) - gns.MintGns(a2u(userRealm.Addr())) // 2M gns + gns.MintGns(userRealm.Addr()) // 2M gns // user has xGNS from previous test (some minted) // try re-delegating @@ -426,11 +427,11 @@ func TestRedelegate(t *testing.T) { amount := uint64(1_000_000) std.TestSetOrigCaller(userRealm.Addr()) - gns.Approve(a2u(consts.GOV_STAKER_ADDR), amount) + gns.Approve(consts.GOV_STAKER_ADDR, amount) Delegate(to, amount) std.TestSetOrigCaller(userRealm.Addr()) - gns.Approve(a2u(consts.GOV_STAKER_ADDR), amount) + gns.Approve(consts.GOV_STAKER_ADDR, amount) Redelegate(from, to, amount) // check data: user xGNS must remain the same, but from-> to shift in staker structure? @@ -449,20 +450,20 @@ func TestRedelegate(t *testing.T) { func TestUndelegate(t *testing.T) { std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) std.TestSkipHeights(101) - gns.MintGns(a2u(user3Realm.Addr())) // 2M gns + gns.MintGns(user3Realm.Addr()) // 2M gns std.TestSetRealm(user3Realm) to := makeFakeAddress("validator_1") amount := uint64(1_000_000) std.TestSetOrigCaller(user3Realm.Addr()) - gns.Approve(a2u(consts.GOV_STAKER_ADDR), amount) + gns.Approve(consts.GOV_STAKER_ADDR, amount) Delegate(to, amount) Undelegate(to, amount) - if xgns.BalanceOf(a2u(user3Realm.Addr())) == 1_000_000 { + if xgns.BalanceOf(user3Realm.Addr()) == 1_000_000 { t.Errorf("Expected user xGNS to be 0 after undelegating 1_000_000, got %d", - xgns.BalanceOf(a2u(user3Realm.Addr()))) + xgns.BalanceOf(user3Realm.Addr())) } lockedList, exist := addrLockedGns.Get(user3Realm.Addr().String()) @@ -549,7 +550,7 @@ func TestCollectReward(t *testing.T) { { std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) std.TestSkipHeights(100) - gns.MintGns(a2u(consts.GOV_STAKER_ADDR)) + gns.MintGns(consts.GOV_STAKER_ADDR) std.TestSetRealm(std.NewUserRealm(consts.ADMIN)) ugnotFaucet(t, consts.GOV_STAKER_ADDR, 1_000_000) @@ -574,7 +575,7 @@ func TestCollectReward(t *testing.T) { std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) std.TestSkipHeights(100) - gns.MintGns(a2u(user2Realm.Addr())) + gns.MintGns(user2Realm.Addr()) std.TestSetRealm(user2Realm) std.TestSkipHeights(100) diff --git a/contract/r/gnoswap/gov/staker/util.gno b/contract/r/gnoswap/gov/staker/util.gno index bf8ffd6dc..c9faafe2c 100644 --- a/contract/r/gnoswap/gov/staker/util.gno +++ b/contract/r/gnoswap/gov/staker/util.gno @@ -8,7 +8,6 @@ import ( "gno.land/p/demo/avl" "gno.land/p/demo/json" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" @@ -55,18 +54,6 @@ func derivePkgAddr(pkgPath string) std.Address { return std.DerivePkgAddr(pkgPath) } -// a2u converts std.Address to pusers.AddressOrName. -// pusers is a package that contains the user-related functions. -// -// Input: -// - addr: the address to convert -// -// Output: -// - pusers.AddressOrName: the converted address -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} - // formatUint formats a uint64 to a string func formatUint(v uint64) string { return strconv.FormatUint(v, 10) diff --git a/contract/r/gnoswap/gov/staker/util_test.gno b/contract/r/gnoswap/gov/staker/util_test.gno index f30a639fc..e3b999c8d 100644 --- a/contract/r/gnoswap/gov/staker/util_test.gno +++ b/contract/r/gnoswap/gov/staker/util_test.gno @@ -9,10 +9,8 @@ import ( "gno.land/p/demo/json" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" "gno.land/p/demo/avl" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/consts" ) @@ -118,31 +116,6 @@ func TestGetPrev(t *testing.T) { } } -func TestA2u(t *testing.T) { - var ( - addr = std.Address("g1lmvrrrr4er2us84h2732sru76c9zl2nvknha8c") - ) - - tests := []struct { - name string - input std.Address - expected pusers.AddressOrName - }{ - { - name: "Success - a2u", - input: addr, - expected: pusers.AddressOrName(addr), - }, - } - - for _, tc := range tests { - t.Run(tc.name, func(t *testing.T) { - got := a2u(tc.input) - uassert.Equal(t, users.Resolve(got).String(), users.Resolve(tc.expected).String()) - }) - } -} - func TestFormatUint(t *testing.T) { tests := []struct { input uint64 diff --git a/contract/r/gnoswap/gov/xgns/xgns.gno b/contract/r/gnoswap/gov/xgns/xgns.gno index 7570dee5c..e813d1df0 100644 --- a/contract/r/gnoswap/gov/xgns/xgns.gno +++ b/contract/r/gnoswap/gov/xgns/xgns.gno @@ -7,9 +7,6 @@ import ( "gno.land/p/demo/grc/grc20" "gno.land/p/demo/ownable" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" - - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" @@ -60,9 +57,8 @@ func VotingSupply() uint64 { // // Returns: // - uint64: The current token balance of the specified address. -func BalanceOf(owner pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - return token.BalanceOf(ownerAddr) +func BalanceOf(owner std.Address) uint64 { + return token.BalanceOf(owner) } // xGNS is non-transferable @@ -75,9 +71,7 @@ func Render(path string) string { case path == "": return token.RenderHome() case c == 2 && parts[0] == "balance": - owner := pusers.AddressOrName(parts[1]) - ownerAddr := users.Resolve(owner) - balance := token.BalanceOf(ownerAddr) + balance := token.BalanceOf(std.Address(parts[1])) return ufmt.Sprintf("%d\n", balance) default: return "404\n" @@ -98,7 +92,7 @@ func Render(path string) string { // Errors: // - Panics if the caller is unauthorized. // - Propagates any error from the ledger.Mint function. -func Mint(to pusers.AddressOrName, amount uint64) { +func Mint(to std.Address, amount uint64) { common.IsHalted() // only (gov staker) or (launchpad) contract can call Mint @@ -110,7 +104,7 @@ func Mint(to pusers.AddressOrName, amount uint64) { )) } - checkErr(ledger.Mint(users.Resolve(to), amount)) + checkErr(ledger.Mint(to, amount)) } // MintByLaunchPad increases the balance of a specified address by a given amount. @@ -127,7 +121,7 @@ func Mint(to pusers.AddressOrName, amount uint64) { // Errors: // - Panics if the caller is unauthorized. // - Propagates any error from the ledger.Mint function. -func MintByLaunchPad(to pusers.AddressOrName, amount uint64) { +func MintByLaunchPad(to std.Address, amount uint64) { common.IsHalted() caller := std.PrevRealm().Addr() @@ -138,7 +132,7 @@ func MintByLaunchPad(to pusers.AddressOrName, amount uint64) { )) } - mint(users.Resolve(to), amount) + mint(to, amount) } // mint increases the balance of a specified address by a given amount. @@ -161,7 +155,7 @@ func mint(to std.Address, amount uint64) { // Errors: // - Panics if the caller is unauthorized. // - Propagates any error from the ledger.Burn function. -func Burn(from pusers.AddressOrName, amount uint64) { +func Burn(from std.Address, amount uint64) { common.IsHalted() // only (gov staker) or (launchpad) contract can call Mint @@ -173,10 +167,10 @@ func Burn(from pusers.AddressOrName, amount uint64) { )) } - burn(users.Resolve(from), amount) + burn(from, amount) } -func BurnByLaunchPad(from pusers.AddressOrName, amount uint64) { +func BurnByLaunchPad(from std.Address, amount uint64) { common.IsHalted() caller := std.PrevRealm().Addr() @@ -186,7 +180,7 @@ func BurnByLaunchPad(from pusers.AddressOrName, amount uint64) { ufmt.Sprintf("only launchpad(%s) contract can call BurnByLaunchPad, called from %s", consts.LAUNCHPAD_ADDR.String(), caller.String()), )) } - burn(users.Resolve(from), amount) + burn(from, amount) } func burn(from std.Address, amount uint64) { diff --git a/contract/r/gnoswap/gov/xgns/xgns_test.gno b/contract/r/gnoswap/gov/xgns/xgns_test.gno index 32a71aa3a..259e48a81 100644 --- a/contract/r/gnoswap/gov/xgns/xgns_test.gno +++ b/contract/r/gnoswap/gov/xgns/xgns_test.gno @@ -7,7 +7,6 @@ import ( "gno.land/r/gnoswap/v1/consts" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" ) func TestTotalSupply(t *testing.T) { @@ -23,10 +22,10 @@ func TestVotingSupply(t *testing.T) { launchpadBalance := uint64(200) std.TestSetRealm(std.NewCodeRealm(consts.GOV_STAKER_PATH)) - Mint(pusers.AddressOrName(consts.GOV_STAKER_ADDR), initialSupply-launchpadBalance) + Mint(consts.GOV_STAKER_ADDR, initialSupply-launchpadBalance) std.TestSetRealm(std.NewCodeRealm(consts.LAUNCHPAD_PATH)) - MintByLaunchPad(pusers.AddressOrName(consts.LAUNCHPAD_ADDR), launchpadBalance) + MintByLaunchPad(consts.LAUNCHPAD_ADDR, launchpadBalance) expectedVotingSupply := initialSupply - launchpadBalance actualVotingSupply := VotingSupply() @@ -35,7 +34,7 @@ func TestVotingSupply(t *testing.T) { } expectedBalance := launchpadBalance - actualBalance := BalanceOf(pusers.AddressOrName(consts.LAUNCHPAD_ADDR)) + actualBalance := BalanceOf(consts.LAUNCHPAD_ADDR) if actualBalance != expectedBalance { t.Errorf("BalanceOf() failed. Expected %d, got %d", expectedBalance, actualBalance) } @@ -45,10 +44,10 @@ func TestMintFail(t *testing.T) { amount := uint64(100) std.TestSetRealm(std.NewUserRealm(consts.ADMIN)) uassert.PanicsWithMessage(t, "[GNOSWAP-XGNS-001] caller has no permission || only gov/staker(g17e3ykyqk9jmqe2y9wxe9zhep3p7cw56davjqwa) or launchpad(g122mau2lp2rc0scs8d27pkkuys4w54mdy2tuer3) contract can call Mint, called from g17290cwvmrapvp869xfnhhawa8sm9edpufzat7d", func() { - Mint(pusers.AddressOrName(consts.GOV_STAKER_ADDR), amount) + Mint(consts.GOV_STAKER_ADDR, amount) }) uassert.PanicsWithMessage(t, "[GNOSWAP-XGNS-001] caller has no permission || only launchpad(g122mau2lp2rc0scs8d27pkkuys4w54mdy2tuer3) contract can call MintByLaunchPad, called from g17290cwvmrapvp869xfnhhawa8sm9edpufzat7d", func() { - MintByLaunchPad(pusers.AddressOrName(consts.GOV_STAKER_ADDR), amount) + MintByLaunchPad(consts.GOV_STAKER_ADDR, amount) }) } @@ -56,9 +55,9 @@ func TestBurn(t *testing.T) { burnAmount := uint64(200) std.TestSetRealm(std.NewCodeRealm(consts.LAUNCHPAD_PATH)) - BurnByLaunchPad(pusers.AddressOrName(consts.LAUNCHPAD_ADDR), burnAmount) + BurnByLaunchPad(consts.LAUNCHPAD_ADDR, burnAmount) expectedBalance := uint64(0) - actualBalance := BalanceOf(pusers.AddressOrName(consts.LAUNCHPAD_ADDR)) + actualBalance := BalanceOf(consts.LAUNCHPAD_ADDR) if actualBalance != expectedBalance { t.Errorf("Burn() failed. Expected %d, got %d", expectedBalance, actualBalance) } @@ -68,9 +67,9 @@ func TestBurnFail(t *testing.T) { amount := uint64(100) std.TestSetRealm(std.NewUserRealm(consts.ADMIN)) uassert.PanicsWithMessage(t, "[GNOSWAP-XGNS-001] caller has no permission || only gov/staker(g17e3ykyqk9jmqe2y9wxe9zhep3p7cw56davjqwa) or launchpad(g122mau2lp2rc0scs8d27pkkuys4w54mdy2tuer3) contract can call Burn, called from g17290cwvmrapvp869xfnhhawa8sm9edpufzat7d", func() { - Burn(pusers.AddressOrName(consts.GOV_STAKER_ADDR), amount) + Burn(consts.GOV_STAKER_ADDR, amount) }) uassert.PanicsWithMessage(t, "[GNOSWAP-XGNS-001] caller has no permission || only launchpad(g122mau2lp2rc0scs8d27pkkuys4w54mdy2tuer3) contract can call BurnByLaunchPad, called from g17290cwvmrapvp869xfnhhawa8sm9edpufzat7d", func() { - BurnByLaunchPad(pusers.AddressOrName(consts.GOV_STAKER_ADDR), amount) + BurnByLaunchPad(consts.GOV_STAKER_ADDR, amount) }) } diff --git a/contract/r/gnoswap/launchpad/_helper_test.gno b/contract/r/gnoswap/launchpad/_helper_test.gno index d1008f935..284edf9f4 100644 --- a/contract/r/gnoswap/launchpad/_helper_test.gno +++ b/contract/r/gnoswap/launchpad/_helper_test.gno @@ -6,15 +6,12 @@ import ( "gno.land/p/demo/grc/grc20" "gno.land/p/demo/testutils" - pusers "gno.land/p/demo/users" - "gno.land/r/demo/users" - "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" ) var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) ) @@ -42,18 +39,18 @@ func (m *MockXGNSToken) VotingSupply() uint64 { return total - launchpad } -func (m *MockXGNSToken) BalanceOf(owner pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) +func (m *MockXGNSToken) BalanceOf(owner std.Address) uint64 { + ownerAddr := owner return m.token.BalanceOf(ownerAddr) } -func (m *MockXGNSToken) Mint(to pusers.AddressOrName, amount uint64) error { - toAddr := users.Resolve(to) +func (m *MockXGNSToken) Mint(to std.Address, amount uint64) error { + toAddr := to return m.ledger.Mint(toAddr, amount) } -func (m *MockXGNSToken) Burn(from pusers.AddressOrName, amount uint64) error { - fromAddr := users.Resolve(from) +func (m *MockXGNSToken) Burn(from std.Address, amount uint64) error { + fromAddr := from return m.ledger.Burn(fromAddr, amount) } @@ -67,7 +64,7 @@ func setupXGNSTest(t *testing.T) (*MockXGNSToken, std.Address) { return mockToken, testAddr } -func xgnsMint(t *testing.T, token *MockXGNSToken, to pusers.AddressOrName, amount uint64) { +func xgnsMint(t *testing.T, token *MockXGNSToken, to std.Address, amount uint64) { t.Helper() // Set realm to gov/staker or launchpad to have permission std.TestSetRealm(std.NewCodeRealm(consts.LAUNCHPAD_PATH)) @@ -77,7 +74,7 @@ func xgnsMint(t *testing.T, token *MockXGNSToken, to pusers.AddressOrName, amoun } } -func xgnsBurn(t *testing.T, token *MockXGNSToken, from pusers.AddressOrName, amount uint64) { +func xgnsBurn(t *testing.T, token *MockXGNSToken, from std.Address, amount uint64) { t.Helper() // Set realm to gov/staker or launchpad to have permission std.TestSetRealm(std.NewCodeRealm(consts.LAUNCHPAD_PATH)) @@ -87,7 +84,7 @@ func xgnsBurn(t *testing.T, token *MockXGNSToken, from pusers.AddressOrName, amo } } -func xgnsCheckBalance(t *testing.T, token *MockXGNSToken, owner pusers.AddressOrName, expected uint64) { +func xgnsCheckBalance(t *testing.T, token *MockXGNSToken, owner std.Address, expected uint64) { t.Helper() balance := token.BalanceOf(owner) if balance != expected { @@ -114,7 +111,7 @@ func xgnsCheckVotingSupply(t *testing.T, token *MockXGNSToken, expected uint64) // Example test using helper functions func TestXGNSHelpers(t *testing.T) { token, testAddr := setupXGNSTest(t) - testUser := a2u(testAddr) + testUser := testAddr // Test minting xgnsMint(t, token, testUser, 1000) @@ -127,7 +124,7 @@ func TestXGNSHelpers(t *testing.T) { xgnsCheckTotalSupply(t, token, 500) // Test Voting Supply - launchpadAddr := a2u(consts.LAUNCHPAD_ADDR) + launchpadAddr := consts.LAUNCHPAD_ADDR xgnsMint(t, token, launchpadAddr, 200) xgnsCheckVotingSupply(t, token, 500) // Only testUser's balance counts } diff --git a/contract/r/gnoswap/launchpad/deposit.gno b/contract/r/gnoswap/launchpad/deposit.gno index 215b2ce20..5a70226fd 100644 --- a/contract/r/gnoswap/launchpad/deposit.gno +++ b/contract/r/gnoswap/launchpad/deposit.gno @@ -198,11 +198,11 @@ func DepositGns(targetProjectTierId string, amount uint64) string { // gns will be locked in `launchpad` contract gns.TransferFrom( - a2u(getPrevAddr()), - a2u(std.Address(consts.LAUNCHPAD_ADDR)), + getPrevAddr(), + consts.LAUNCHPAD_ADDR, amount, ) - xgns.Mint(a2u(std.Address(consts.LAUNCHPAD_ADDR)), amount) + xgns.Mint(consts.LAUNCHPAD_ADDR, amount) // Emit deposit event prevAddr, prevPkgPath := getPrev() @@ -334,8 +334,8 @@ func CollectDepositGnsByDepositId(depositId string) uint64 { // Process token transfers if amount > 0 if amount > 0 { - xgns.Burn(a2u(consts.LAUNCHPAD_ADDR), amount) - gns.Transfer(a2u(caller), amount) + xgns.Burn(consts.LAUNCHPAD_ADDR, amount) + gns.Transfer(caller, amount) return amount } @@ -424,7 +424,7 @@ func checkDepositConditions(project Project) { // check balance var balance uint64 if condition.tokenPath == consts.GOV_XGNS_PATH { - balance = xgns.BalanceOf(a2u(caller)) + balance = xgns.BalanceOf(caller) } else { balance = common.BalanceOf(condition.tokenPath, caller) } @@ -838,8 +838,8 @@ func processCollectedDeposits(depositList []string, pid string) uint64 { if amount > 0 { caller := getPrevAddr() - xgns.Burn(a2u(consts.LAUNCHPAD_ADDR), amount) - gns.Transfer(a2u(caller), amount) + xgns.Burn(consts.LAUNCHPAD_ADDR, amount) + gns.Transfer(caller, amount) } return amount diff --git a/contract/r/gnoswap/launchpad/deposit_test.gno b/contract/r/gnoswap/launchpad/deposit_test.gno index 50d9d09f9..ab9cc7ce7 100644 --- a/contract/r/gnoswap/launchpad/deposit_test.gno +++ b/contract/r/gnoswap/launchpad/deposit_test.gno @@ -8,10 +8,8 @@ import ( "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" u256 "gno.land/p/gnoswap/uint256" - "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" "gno.land/r/gnoswap/v1/gns" "gno.land/r/gnoswap/v1/gov/xgns" @@ -341,10 +339,10 @@ func TestDepositGns(t *testing.T) { t.Run("Success with sufficient balance", func(t *testing.T) { // transfer enough gns std.TestSetRealm(adminRealm) - gns.Transfer(common.AddrToUser(testAddr), 1000000) + gns.Transfer(testAddr, 1000000) std.TestSetRealm(std.NewUserRealm(testAddr)) - gns.Approve(common.AddrToUser(consts.LAUNCHPAD_ADDR), 1000000) + gns.Approve(consts.LAUNCHPAD_ADDR, 1000000) std.TestSkipHeights(10) depositId := DepositGns(project.id+":30", 1000000) @@ -609,7 +607,7 @@ func TestProcessCollectedDeposits_TransactionFail(t *testing.T) { deposit, _ := createDeposit(info, 1000) deposits[deposit.id] = deposit - xgnsMint(t, mockXGNS, a2u(consts.LAUNCHPAD_ADDR), 500) + xgnsMint(t, mockXGNS, consts.LAUNCHPAD_ADDR, 500) std.TestSetRealm(std.NewCodeRealm(consts.LAUNCHPAD_PATH)) @@ -622,7 +620,7 @@ func TestProcessCollectedDeposits_BalanceChanges(t *testing.T) { projects[project.id] = project depositAmount := uint64(1000) - xgnsMint(t, mockXGNS, a2u(consts.LAUNCHPAD_ADDR), depositAmount) + xgnsMint(t, mockXGNS, consts.LAUNCHPAD_ADDR, depositAmount) info := ProjectTierInfo{ Project: project, @@ -762,20 +760,20 @@ func TestCollectDepositGnsByDepositId_ExactClaimable(t *testing.T) { std.TestSetRealm(std.NewCodeRealm(consts.EMISSION_PATH)) std.TestSkipHeights(int64(10)) - gns.MintGns(a2u(consts.LAUNCHPAD_ADDR)) + gns.MintGns(consts.LAUNCHPAD_ADDR) std.TestSkipHeights(int64(10)) std.TestSetRealm(std.NewUserRealm(userA)) - gns.Approve(a2u(std.Address(consts.LAUNCHPAD_ADDR)), 1000) + gns.Approve(consts.LAUNCHPAD_ADDR, 1000) token, _ := setupXGNSTest(t) std.TestSetRealm(std.NewCodeRealm(consts.LAUNCHPAD_PATH)) std.TestSetOrigCaller(std.Address(consts.LAUNCHPAD_PATH)) - xgnsMint(t, token, pusers.AddressOrName(consts.LAUNCHPAD_ADDR), 1000) + xgnsMint(t, token, consts.LAUNCHPAD_ADDR, 1000) std.TestSetRealm(std.NewUserRealm(consts.LAUNCHPAD_ADDR)) xgns.Mint( - a2u(std.Address(consts.LAUNCHPAD_ADDR)), + consts.LAUNCHPAD_ADDR, 1000, ) diff --git a/contract/r/gnoswap/launchpad/launchpad_test.gno b/contract/r/gnoswap/launchpad/launchpad_test.gno index 97e300e31..809d61004 100644 --- a/contract/r/gnoswap/launchpad/launchpad_test.gno +++ b/contract/r/gnoswap/launchpad/launchpad_test.gno @@ -256,7 +256,7 @@ func TestValidateAll(t *testing.T) { { name: "InvalidName", input: ProjectInput{ - Name: "", + Name: "", TokenPath: "valid/token", Recipient: std.Address("g1valid"), DepositAmount: 10, @@ -867,7 +867,7 @@ func TestCreateProject(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { std.TestSetRealm(adminRealm) - obl.Approve(a2u(consts.LAUNCHPAD_ADDR), tt.totalAmount) + obl.Approve(consts.LAUNCHPAD_ADDR, tt.totalAmount) if !tt.duplicateTest { std.TestSkipHeights(1) } @@ -943,7 +943,7 @@ func TestCreateProject_TierAndBalance(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { std.TestSetRealm(adminRealm) - obl.Approve(a2u(consts.LAUNCHPAD_ADDR), tt.totalAmount) + obl.Approve(consts.LAUNCHPAD_ADDR, tt.totalAmount) std.TestSkipHeights(1) defer func() { diff --git a/contract/r/gnoswap/launchpad/type.gno b/contract/r/gnoswap/launchpad/type.gno index b48486b5a..82c44af78 100644 --- a/contract/r/gnoswap/launchpad/type.gno +++ b/contract/r/gnoswap/launchpad/type.gno @@ -214,7 +214,7 @@ func (p *Project) checkDepositConditions(caller std.Address) { var balance uint64 if condition.TokenPath() == consts.GOV_XGNS_PATH { - balance = xgns.BalanceOf(common.AddrToUser(caller)) + balance = xgns.BalanceOf(caller) } else { balance = common.BalanceOf(condition.TokenPath(), caller) } diff --git a/contract/r/gnoswap/launchpad/util.gno b/contract/r/gnoswap/launchpad/util.gno index 4491687b6..96c679be5 100644 --- a/contract/r/gnoswap/launchpad/util.gno +++ b/contract/r/gnoswap/launchpad/util.gno @@ -7,7 +7,6 @@ import ( "gno.land/p/demo/json" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" u256 "gno.land/p/gnoswap/uint256" "gno.land/r/gnoswap/v1/common" @@ -51,10 +50,6 @@ func b64Encode(data string) string { return string(b64.StdEncoding.EncodeToString([]byte(data))) } -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} - func minU64(x, y uint64) uint64 { if x < y { return x diff --git a/contract/r/gnoswap/pool/_helper_test.gno b/contract/r/gnoswap/pool/_helper_test.gno index 4605f99af..1093db7da 100644 --- a/contract/r/gnoswap/pool/_helper_test.gno +++ b/contract/r/gnoswap/pool/_helper_test.gno @@ -16,8 +16,6 @@ import ( "gno.land/p/demo/avl" "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" pn "gno.land/r/gnoswap/v1/position" @@ -56,13 +54,12 @@ var ( ) var ( - adminAddr = consts.ADMIN - admin = pusers.AddressOrName(adminAddr) - alice = pusers.AddressOrName(testutils.TestAddress("alice")) - pool = pusers.AddressOrName(consts.POOL_ADDR) - protocolFee = pusers.AddressOrName(consts.PROTOCOL_FEE_ADDR) - router = pusers.AddressOrName(consts.ROUTER_ADDR) - adminRealm = std.NewUserRealm(users.Resolve(admin)) + admin = consts.ADMIN + alice = testutils.TestAddress("alice") + pool = consts.POOL_ADDR + protocolFee = consts.PROTOCOL_FEE_ADDR + router = consts.ROUTER_ADDR + adminRealm = std.NewUserRealm(admin) posRealm = std.NewCodeRealm(consts.POSITION_PATH) rouRealm = std.NewCodeRealm(consts.ROUTER_PATH) @@ -73,10 +70,10 @@ var ( func InitialisePoolTest(t *testing.T) { t.Helper() - ugnotFaucet(t, users.Resolve(admin), 100_000_000_000_000) - ugnotDeposit(t, users.Resolve(admin), 100_000_000_000_000) + ugnotFaucet(t, admin, 100_000_000_000_000) + ugnotDeposit(t, admin, 100_000_000_000_000) - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) TokenApprove(t, gnsPath, admin, pool, maxApprove) poolPath := GetPoolPath(wugnotPath, gnsPath, fee3000) if !DoesPoolPathExist(poolPath) { @@ -84,7 +81,7 @@ func InitialisePoolTest(t *testing.T) { } //2. create position - std.TestSetOrigCaller(users.Resolve(alice)) + std.TestSetOrigCaller(alice) TokenFaucet(t, wugnotPath, alice) TokenFaucet(t, gnsPath, alice) TokenApprove(t, wugnotPath, alice, pool, uint64(1000)) @@ -100,14 +97,14 @@ func InitialisePoolTest(t *testing.T) { "0", "0", max_timeout, - users.Resolve(alice), - users.Resolve(alice), + alice, + alice, ) } -func TokenFaucet(t *testing.T, tokenPath string, to pusers.AddressOrName) { +func TokenFaucet(t *testing.T, tokenPath string, to std.Address) { t.Helper() - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) defaultAmount := uint64(5_000_000_000) switch tokenPath { @@ -130,11 +127,11 @@ func TokenFaucet(t *testing.T, tokenPath string, to pusers.AddressOrName) { } } -func TokenBalance(t *testing.T, tokenPath string, owner pusers.AddressOrName) uint64 { +func TokenBalance(t *testing.T, tokenPath string, owner std.Address) uint64 { t.Helper() switch tokenPath { case wugnotPath: - return wugnot.BalanceOf(owner) + return wugnot.BalanceOf(common.AddrToUser(owner)) case gnsPath: return gns.BalanceOf(owner) case barPath: @@ -152,11 +149,11 @@ func TokenBalance(t *testing.T, tokenPath string, owner pusers.AddressOrName) ui } } -func TokenAllowance(t *testing.T, tokenPath string, owner, spender pusers.AddressOrName) uint64 { +func TokenAllowance(t *testing.T, tokenPath string, owner, spender std.Address) uint64 { t.Helper() switch tokenPath { case wugnotPath: - return wugnot.Allowance(owner, spender) + return wugnot.Allowance(common.AddrToUser(owner), common.AddrToUser(spender)) case gnsPath: return gns.Allowance(owner, spender) case barPath: @@ -174,7 +171,7 @@ func TokenAllowance(t *testing.T, tokenPath string, owner, spender pusers.Addres } } -func TokenApprove(t *testing.T, tokenPath string, owner, spender pusers.AddressOrName, amount uint64) { +func TokenApprove(t *testing.T, tokenPath string, owner, spender std.Address, amount uint64) { t.Helper() switch tokenPath { case wugnotPath: @@ -231,10 +228,10 @@ func MintPosition(t *testing.T, func MintPositionAll(t *testing.T, caller std.Address) { t.Helper() std.TestSetRealm(std.NewUserRealm(caller)) - TokenApprove(t, gnsPath, pusers.AddressOrName(caller), pool, maxApprove) - TokenApprove(t, gnsPath, pusers.AddressOrName(caller), router, maxApprove) - TokenApprove(t, wugnotPath, pusers.AddressOrName(caller), pool, maxApprove) - TokenApprove(t, wugnotPath, pusers.AddressOrName(caller), router, maxApprove) + TokenApprove(t, gnsPath, caller, pool, maxApprove) + TokenApprove(t, gnsPath, caller, router, maxApprove) + TokenApprove(t, wugnotPath, caller, pool, maxApprove) + TokenApprove(t, wugnotPath, caller, router, maxApprove) params := []struct { tickLower int32 @@ -382,87 +379,87 @@ func MintPositionAll(t *testing.T, caller std.Address) { } -func wugnotApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func wugnotApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) - wugnot.Approve(spender, amount) + std.TestSetRealm(std.NewUserRealm(owner)) + wugnot.Approve(common.AddrToUser(spender), amount) } -func gnsApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func gnsApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) gns.Approve(spender, amount) } -func barApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func barApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) bar.Approve(spender, amount) } -func bazApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func bazApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) baz.Approve(spender, amount) } -func fooApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func fooApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) foo.Approve(spender, amount) } -func oblApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func oblApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) obl.Approve(spender, amount) } -func quxApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func quxApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) qux.Approve(spender, amount) } -func wugnotTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func wugnotTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) - wugnot.Transfer(to, amount) + std.TestSetRealm(std.NewUserRealm(admin)) + wugnot.Transfer(common.AddrToUser(to), amount) } -func gnsTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func gnsTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) gns.Transfer(to, amount) } -func barTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func barTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) bar.Transfer(to, amount) } -func bazTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func bazTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) baz.Transfer(to, amount) } -func fooTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func fooTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) foo.Transfer(to, amount) } -func oblTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func oblTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) obl.Transfer(to, amount) } -func quxTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func quxTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) qux.Transfer(to, amount) } @@ -505,7 +502,7 @@ func ugnotBurn(t *testing.T, addr std.Address, denom string, amount int64) { func ugnotFaucet(t *testing.T, to std.Address, amount uint64) { t.Helper() - faucetAddress := users.Resolve(admin) + faucetAddress := admin std.TestSetOrigCaller(faucetAddress) if ugnotBalanceOf(t, faucetAddress) < amount { @@ -538,43 +535,42 @@ func burnTokens(t *testing.T) { // burn tokens for _, addr := range addrUsedInTest { - uAddr := a2u(addr) - burnFoo(uAddr) - burnBar(uAddr) - burnBaz(uAddr) - burnQux(uAddr) - burnObl(uAddr) - burnUsdc(uAddr) + burnFoo(addr) + burnBar(addr) + burnBaz(addr) + burnQux(addr) + burnObl(addr) + burnUsdc(addr) } } -func burnFoo(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnFoo(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) foo.Burn(addr, foo.BalanceOf(addr)) } -func burnBar(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnBar(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) bar.Burn(addr, bar.BalanceOf(addr)) } -func burnBaz(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnBaz(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) baz.Burn(addr, baz.BalanceOf(addr)) } -func burnQux(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnQux(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) qux.Burn(addr, qux.BalanceOf(addr)) } -func burnObl(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnObl(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) obl.Burn(addr, obl.BalanceOf(addr)) } -func burnUsdc(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnUsdc(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) usdc.Burn(addr, usdc.BalanceOf(addr)) } @@ -591,12 +587,12 @@ func TestBeforeResetObject(t *testing.T) { withdrawalFeeBPS = 100 // transfer some tokens - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) - foo.Transfer(a2u(addr01), 100_000_000) - bar.Transfer(a2u(addr01), 100_000_000) + std.TestSetRealm(std.NewUserRealm(admin)) + foo.Transfer(addr01, 100_000_000) + bar.Transfer(addr01, 100_000_000) - uassert.Equal(t, foo.BalanceOf(a2u(addr01)), uint64(100_000_000)) - uassert.Equal(t, bar.BalanceOf(a2u(addr01)), uint64(100_000_000)) + uassert.Equal(t, foo.BalanceOf(addr01), uint64(100_000_000)) + uassert.Equal(t, bar.BalanceOf(addr01), uint64(100_000_000)) } func TestResetObject(t *testing.T) { @@ -610,6 +606,6 @@ func TestResetObject(t *testing.T) { func TestBurnTokens(t *testing.T) { burnTokens(t) - uassert.Equal(t, foo.BalanceOf(a2u(addr01)), uint64(0)) // 100_000_000 -> 0 - uassert.Equal(t, bar.BalanceOf(a2u(addr01)), uint64(0)) // 100_000_000 -> 0 + uassert.Equal(t, foo.BalanceOf(addr01), uint64(0)) // 100_000_000 -> 0 + uassert.Equal(t, bar.BalanceOf(addr01), uint64(0)) // 100_000_000 -> 0 } diff --git a/contract/r/gnoswap/pool/pool_manager.gno b/contract/r/gnoswap/pool/pool_manager.gno index c0c6a1deb..22ac586a5 100644 --- a/contract/r/gnoswap/pool/pool_manager.gno +++ b/contract/r/gnoswap/pool/pool_manager.gno @@ -191,7 +191,7 @@ func CreatePool( } if poolCreationFee > 0 { - gns.TransferFrom(a2u(std.PrevRealm().Addr()), a2u(consts.PROTOCOL_FEE_ADDR), poolCreationFee) + gns.TransferFrom(std.PrevRealm().Addr(), consts.PROTOCOL_FEE_ADDR, poolCreationFee) pf.AddToProtocolFee(consts.GNS_PATH, poolCreationFee) std.Emit( diff --git a/contract/r/gnoswap/pool/pool_transfer_test.gno b/contract/r/gnoswap/pool/pool_transfer_test.gno index 9a610d51d..590e1cfd3 100644 --- a/contract/r/gnoswap/pool/pool_transfer_test.gno +++ b/contract/r/gnoswap/pool/pool_transfer_test.gno @@ -5,7 +5,6 @@ import ( "testing" "gno.land/p/demo/testutils" - pusers "gno.land/p/demo/users" i256 "gno.land/p/gnoswap/int256" u256 "gno.land/p/gnoswap/uint256" @@ -134,8 +133,8 @@ func TestTransferFromAndVerify(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { - TokenFaucet(t, tt.tokenPath, pusers.AddressOrName(tt.from)) - TokenApprove(t, tt.tokenPath, pusers.AddressOrName(tt.from), pool, u256.MustFromDecimal(tt.amount.ToString()).Uint64()) + TokenFaucet(t, tt.tokenPath, tt.from) + TokenApprove(t, tt.tokenPath, tt.from, pool, u256.MustFromDecimal(tt.amount.ToString()).Uint64()) tt.pool.safeTransferFrom(tt.from, tt.to, tt.tokenPath, u256.MustFromDecimal(tt.amount.ToString()), tt.isToken0) @@ -163,8 +162,8 @@ func TestTransferFromAndVerify(t *testing.T) { negativeAmount := i256.NewInt(-500) - TokenFaucet(t, fooPath, pusers.AddressOrName(testutils.TestAddress("from_addr"))) - TokenApprove(t, fooPath, pusers.AddressOrName(testutils.TestAddress("from_addr")), pusers.AddressOrName(consts.POOL_ADDR), u256.MustFromDecimal(negativeAmount.Abs().ToString()).Uint64()) + TokenFaucet(t, fooPath, testutils.TestAddress("from_addr")) + TokenApprove(t, fooPath, testutils.TestAddress("from_addr"), consts.POOL_ADDR, u256.MustFromDecimal(negativeAmount.Abs().ToString()).Uint64()) pool.safeTransferFrom( testutils.TestAddress("from_addr"), testutils.TestAddress("to_addr"), diff --git a/contract/r/gnoswap/pool/protocol_fee_pool_creation_test.gno b/contract/r/gnoswap/pool/protocol_fee_pool_creation_test.gno index 0ce6b43ae..022011165 100644 --- a/contract/r/gnoswap/pool/protocol_fee_pool_creation_test.gno +++ b/contract/r/gnoswap/pool/protocol_fee_pool_creation_test.gno @@ -7,14 +7,12 @@ import ( "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/consts" ) func TestSetPoolCreationFee(t *testing.T) { var ( - admin = pusers.AddressOrName("g1lmvrrrr4er2us84h2732sru76c9zl2nvknha8c") + admin = std.Address("g1lmvrrrr4er2us84h2732sru76c9zl2nvknha8c") ) tests := []struct { @@ -28,7 +26,7 @@ func TestSetPoolCreationFee(t *testing.T) { name: "Panic call by non-governance", action: func() { const newFee = 2_000_000_000 - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) SetPoolCreationFee(newFee) }, verify: nil, @@ -82,8 +80,8 @@ func TestSetPoolCreationFee(t *testing.T) { func TestSetPoolCreationFeeByAdmin(t *testing.T) { var ( - admin = pusers.AddressOrName(consts.ADMIN) - alice = pusers.AddressOrName(testutils.TestAddress("alice")) + admin = consts.ADMIN + alice = testutils.TestAddress("alice") ) tests := []struct { @@ -111,7 +109,7 @@ func TestSetPoolCreationFeeByAdmin(t *testing.T) { name: "Panic call by non-admin (user)", action: func() { const newFee = 2_000_000_000 - std.TestSetOrigCaller(users.Resolve(alice)) + std.TestSetOrigCaller(alice) { SetPoolCreationFeeByAdmin(newFee) } @@ -124,7 +122,7 @@ func TestSetPoolCreationFeeByAdmin(t *testing.T) { name: "Success call by admin", action: func() { const newFee = 2_000_000_000 - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) { SetPoolCreationFeeByAdmin(newFee) } @@ -139,7 +137,7 @@ func TestSetPoolCreationFeeByAdmin(t *testing.T) { name: "Success call by admin (rollback)", action: func() { const newFee = 1_000_000_000 - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) { SetPoolCreationFeeByAdmin(newFee) } diff --git a/contract/r/gnoswap/pool/protocol_fee_withdrawal_test.gno b/contract/r/gnoswap/pool/protocol_fee_withdrawal_test.gno index 53f9e0668..d8593622f 100644 --- a/contract/r/gnoswap/pool/protocol_fee_withdrawal_test.gno +++ b/contract/r/gnoswap/pool/protocol_fee_withdrawal_test.gno @@ -8,19 +8,17 @@ import ( "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/consts" pn "gno.land/r/gnoswap/v1/position" ) func TestHandleWithdrawalFee(t *testing.T) { var ( - admin = pusers.AddressOrName(consts.ADMIN) - position = pusers.AddressOrName(consts.POSITION_ADDR) - pool = pusers.AddressOrName(consts.POOL_ADDR) - protocolFee = pusers.AddressOrName(consts.PROTOCOL_FEE_ADDR) - alice = pusers.AddressOrName(testutils.TestAddress("alice")) + admin = consts.ADMIN + position = consts.POSITION_ADDR + pool = consts.POOL_ADDR + protocolFee = consts.PROTOCOL_FEE_ADDR + alice = testutils.TestAddress("alice") ) tests := []struct { name string @@ -32,8 +30,8 @@ func TestHandleWithdrawalFee(t *testing.T) { { name: "Panic if caller is not position contract", action: func(t *testing.T) { - std.TestSetOrigCaller(users.Resolve(admin)) - HandleWithdrawalFee(0, "gno.land/r/onbloc/foo", "0", "gno.land/r/onbloc/foo", "0", "", users.Resolve(admin)) + std.TestSetOrigCaller(admin) + HandleWithdrawalFee(0, "gno.land/r/onbloc/foo", "0", "gno.land/r/onbloc/foo", "0", "", admin) }, verify: nil, expected: "[GNOSWAP-POOL-001] caller has no permission || withdrawal_fee.gno__HandleWithdrawalFee() || only position(g1q646ctzhvn60v492x8ucvyqnrj2w30cwh6efk5) can call this function, called from g17290cwvmrapvp869xfnhhawa8sm9edpufzat7d", @@ -42,8 +40,8 @@ func TestHandleWithdrawalFee(t *testing.T) { { name: "Panic if pkgPath is not registered", action: func(t *testing.T) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(position))) - HandleWithdrawalFee(0, "pkgPath", "1000", "pkgPath", "1000", "poolPath", users.Resolve(admin)) + std.TestSetRealm(std.NewUserRealm(position)) + HandleWithdrawalFee(0, "pkgPath", "1000", "pkgPath", "1000", "poolPath", admin) }, verify: nil, expected: "[GNOSWAP-COMMON-004] token is not registered || token(pkgPath)", @@ -53,14 +51,14 @@ func TestHandleWithdrawalFee(t *testing.T) { name: "Panic if spender has no approved balance", action: func(t *testing.T) { InitialisePoolTest(t) - std.TestSetRealm(std.NewUserRealm(users.Resolve(position))) + std.TestSetRealm(std.NewUserRealm(position)) poolPath := GetPoolPath(wugnotPath, gnsPath, fee3000) if !pools.Has(poolPath) { panic("pool not found") } TokenApprove(t, wugnotPath, alice, protocolFee, uint64(0)) TokenApprove(t, gnsPath, alice, protocolFee, uint64(0)) - HandleWithdrawalFee(1, wugnotPath, "1000", gnsPath, "1000", poolPath, users.Resolve(alice)) + HandleWithdrawalFee(1, wugnotPath, "1000", gnsPath, "1000", poolPath, alice) }, verify: nil, expected: "[GNOSWAP-POOL-021] token transfer failed || insufficient allowance", @@ -70,7 +68,7 @@ func TestHandleWithdrawalFee(t *testing.T) { name: "Success call by position contract", action: func(t *testing.T) { InitialisePoolTest(t) - std.TestSetRealm(std.NewUserRealm(users.Resolve(alice))) + std.TestSetRealm(std.NewUserRealm(alice)) TokenApprove(t, wugnotPath, alice, pool, uint64(1000)) TokenApprove(t, gnsPath, alice, pool, uint64(1000)) pn.Mint( @@ -84,17 +82,17 @@ func TestHandleWithdrawalFee(t *testing.T) { "0", "0", max_timeout, - users.Resolve(alice), - users.Resolve(alice), + alice, + alice, ) }, verify: func(t *testing.T) (string, string) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(alice))) + std.TestSetRealm(std.NewUserRealm(alice)) TokenApprove(t, wugnotPath, alice, pool, uint64(10000000000)) TokenApprove(t, gnsPath, alice, pool, uint64(1000000000)) - std.TestSetRealm(std.NewUserRealm(users.Resolve(position))) + std.TestSetRealm(std.NewUserRealm(position)) poolPath := GetPoolPath(wugnotPath, gnsPath, fee3000) - return HandleWithdrawalFee(2, wugnotPath, "1000", gnsPath, "1000", poolPath, users.Resolve(alice)) + return HandleWithdrawalFee(2, wugnotPath, "1000", gnsPath, "1000", poolPath, alice) }, expected: "990,990", shouldPanic: false, @@ -143,8 +141,8 @@ func TestHandleWithdrawalFee(t *testing.T) { func TestSetWithdrawalFee(t *testing.T) { var ( - admin = pusers.AddressOrName(consts.ADMIN) - alice = pusers.AddressOrName(testutils.TestAddress("alice")) + admin = consts.ADMIN + alice = testutils.TestAddress("alice") ) tests := []struct { name string @@ -157,7 +155,7 @@ func TestSetWithdrawalFee(t *testing.T) { name: "Panic call to set withdrawal fee setFee by non-admin (user)", action: func(t *testing.T) { const newFee = uint64(200) - userRealm := std.NewUserRealm(users.Resolve(alice)) + userRealm := std.NewUserRealm(alice) std.TestSetRealm(userRealm) { SetWithdrawalFee(newFee) @@ -171,7 +169,7 @@ func TestSetWithdrawalFee(t *testing.T) { name: "Panic call to set withdrawal fee by admin", action: func(t *testing.T) { const newFee = uint64(200) - adminRealm := std.NewUserRealm(users.Resolve(admin)) + adminRealm := std.NewUserRealm(admin) std.TestSetRealm(adminRealm) { SetWithdrawalFee(newFee) @@ -239,9 +237,9 @@ func TestSetWithdrawalFee(t *testing.T) { func TestSetWithdrawalFeeByAdmin(t *testing.T) { var ( - admin = pusers.AddressOrName(consts.ADMIN) - alice = pusers.AddressOrName(testutils.TestAddress("alice")) - governance = pusers.AddressOrName(consts.GOV_GOVERNANCE_ADDR) + admin = consts.ADMIN + alice = testutils.TestAddress("alice") + governance = consts.GOV_GOVERNANCE_ADDR ) tests := []struct { name string @@ -254,7 +252,7 @@ func TestSetWithdrawalFeeByAdmin(t *testing.T) { name: "Panic call to set withdrawal fee by non-admin (user)", action: func(t *testing.T) { const newFee = uint64(100) - userRealm := std.NewUserRealm(users.Resolve(alice)) + userRealm := std.NewUserRealm(alice) std.TestSetRealm(userRealm) { SetWithdrawalFeeByAdmin(newFee) @@ -268,7 +266,7 @@ func TestSetWithdrawalFeeByAdmin(t *testing.T) { name: "Panic call to set withdrawal fee by non-admin (gov contract)", action: func(t *testing.T) { const newFee = uint64(100) - govRealm := std.NewUserRealm(users.Resolve(governance)) + govRealm := std.NewUserRealm(governance) std.TestSetRealm(govRealm) { SetWithdrawalFeeByAdmin(newFee) @@ -282,7 +280,7 @@ func TestSetWithdrawalFeeByAdmin(t *testing.T) { name: "Success call to set withdrawal fee by admin", action: func(t *testing.T) { const newFee = uint64(100) - adminRealm := std.NewUserRealm(users.Resolve(admin)) + adminRealm := std.NewUserRealm(admin) std.TestSetRealm(adminRealm) { SetWithdrawalFeeByAdmin(newFee) diff --git a/contract/r/gnoswap/pool/swap_test.gno b/contract/r/gnoswap/pool/swap_test.gno index 25cb7c4f8..49c597f6e 100644 --- a/contract/r/gnoswap/pool/swap_test.gno +++ b/contract/r/gnoswap/pool/swap_test.gno @@ -6,9 +6,7 @@ import ( "gno.land/p/demo/avl" "gno.land/p/demo/uassert" - "gno.land/r/demo/users" - pusers "gno.land/p/demo/users" i256 "gno.land/p/gnoswap/int256" u256 "gno.land/p/gnoswap/uint256" @@ -280,7 +278,7 @@ func TestComputeSwap(t *testing.T) { } func TestSwap_Failures(t *testing.T) { - const addr = pusers.AddressOrName(consts.ROUTER_ADDR) + const addr = consts.ROUTER_ADDR tests := []struct { name string @@ -307,11 +305,11 @@ func TestSwap_Failures(t *testing.T) { token0Path: wugnotPath, token1Path: gnsPath, fee: fee3000, - recipient: users.Resolve(addr), + recipient: addr, zeroForOne: true, amountSpecified: "100", sqrtPriceLimitX96: "79228162514264337593543950336", - payer: users.Resolve(addr), + payer: addr, expectError: true, }, { @@ -322,11 +320,11 @@ func TestSwap_Failures(t *testing.T) { token0Path: wugnotPath, token1Path: gnsPath, fee: fee3000, - recipient: users.Resolve(alice), + recipient: alice, zeroForOne: true, amountSpecified: "0", sqrtPriceLimitX96: "79228162514264337593543950336", - payer: users.Resolve(alice), + payer: alice, expectError: true, }, { @@ -339,11 +337,11 @@ func TestSwap_Failures(t *testing.T) { token0Path: wugnotPath, token1Path: gnsPath, fee: fee3000, - recipient: users.Resolve(alice), + recipient: alice, zeroForOne: true, amountSpecified: "100", sqrtPriceLimitX96: "79228162514264337593543950336", - payer: users.Resolve(alice), + payer: alice, expectedAmount0: "0", expectedAmount1: "0", expectError: true, @@ -493,7 +491,7 @@ func TestDrySwap_Failures(t *testing.T) { } func TestSwapAndDrySwapComparison(t *testing.T) { - const addr = pusers.AddressOrName(consts.ROUTER_ADDR) + const addr = consts.ROUTER_ADDR tests := []struct { name string @@ -523,7 +521,7 @@ func TestSwapAndDrySwapComparison(t *testing.T) { name: "swap - request to swap amount over total liquidty", setupFn: func(t *testing.T) { InitialisePoolTest(t) - MintPositionAll(t, users.Resolve(admin)) + MintPositionAll(t, admin) TokenFaucet(t, gnsPath, addr) TokenApprove(t, gnsPath, addr, pool, maxApprove) }, @@ -559,11 +557,11 @@ func TestSwapAndDrySwapComparison(t *testing.T) { tt.token0Path, tt.token1Path, tt.fee, - users.Resolve(addr), + addr, tt.zeroForOne, tt.amountSpecified, tt.sqrtPriceLimitX96, - users.Resolve(addr), + addr, ) if !drySuccess { @@ -584,7 +582,7 @@ func TestSwapAndDrySwapComparison(t *testing.T) { } func TestSwapAndDrySwapComparison_amount_zero(t *testing.T) { - const addr = pusers.AddressOrName(consts.ROUTER_ADDR) + const addr = consts.ROUTER_ADDR tests := []struct { name string @@ -629,11 +627,11 @@ func TestSwapAndDrySwapComparison_amount_zero(t *testing.T) { wugnotPath, gnsPath, fee3000, - users.Resolve(addr), + addr, true, "0", maxSqrtPriceLimitX96, - users.Resolve(addr), + addr, ) }, shouldPanic: true, @@ -683,7 +681,7 @@ func TestSwapAndDrySwapComparison_amount_zero(t *testing.T) { } func TestSwap_amount_over_liquidity(t *testing.T) { - const addr = pusers.AddressOrName(consts.ROUTER_ADDR) + const addr = consts.ROUTER_ADDR tests := []struct { name string @@ -696,7 +694,7 @@ func TestSwap_amount_over_liquidity(t *testing.T) { name: "amount over liquidity - zeroForOne = false, token0:20000", setupFn: func(t *testing.T) { InitialisePoolTest(t) - MintPositionAll(t, users.Resolve(admin)) + MintPositionAll(t, admin) TokenFaucet(t, gnsPath, addr) TokenApprove(t, gnsPath, addr, pool, maxApprove) }, @@ -706,11 +704,11 @@ func TestSwap_amount_over_liquidity(t *testing.T) { wugnotPath, gnsPath, fee3000, - users.Resolve(alice), + alice, false, "20000", consts.MAX_PRICE, - users.Resolve(addr), + addr, ) return actualAmount0, actualAmount1 }, @@ -721,7 +719,7 @@ func TestSwap_amount_over_liquidity(t *testing.T) { name: "amount over liquidity - zeroForOne = false, token1:-20000", setupFn: func(t *testing.T) { InitialisePoolTest(t) - MintPositionAll(t, users.Resolve(admin)) + MintPositionAll(t, admin) TokenFaucet(t, gnsPath, addr) TokenApprove(t, gnsPath, addr, pool, maxApprove) }, @@ -731,11 +729,11 @@ func TestSwap_amount_over_liquidity(t *testing.T) { wugnotPath, gnsPath, fee3000, - users.Resolve(alice), + alice, false, "-20000", consts.MAX_PRICE, - users.Resolve(addr), + addr, ) return actualAmount0, actualAmount1 }, @@ -746,7 +744,7 @@ func TestSwap_amount_over_liquidity(t *testing.T) { name: "amount over liquidity - zeroForOne = true, token0:20000", setupFn: func(t *testing.T) { InitialisePoolTest(t) - MintPositionAll(t, users.Resolve(admin)) + MintPositionAll(t, admin) TokenFaucet(t, gnsPath, addr) TokenApprove(t, gnsPath, addr, pool, maxApprove) TokenApprove(t, wugnotPath, addr, pool, maxApprove) @@ -757,11 +755,11 @@ func TestSwap_amount_over_liquidity(t *testing.T) { wugnotPath, gnsPath, fee3000, - users.Resolve(alice), + alice, true, "20000", consts.MIN_PRICE, - users.Resolve(addr), + addr, ) return actualAmount0, actualAmount1 }, @@ -772,7 +770,7 @@ func TestSwap_amount_over_liquidity(t *testing.T) { name: "amount over liquidity - zeroForOne = true, token1:-20000", setupFn: func(t *testing.T) { InitialisePoolTest(t) - MintPositionAll(t, users.Resolve(admin)) + MintPositionAll(t, admin) TokenFaucet(t, gnsPath, addr) TokenFaucet(t, wugnotPath, addr) TokenApprove(t, gnsPath, addr, pool, maxApprove) @@ -784,11 +782,11 @@ func TestSwap_amount_over_liquidity(t *testing.T) { wugnotPath, gnsPath, fee3000, - users.Resolve(alice), + alice, true, "-20000", consts.MIN_PRICE, - users.Resolve(addr), + addr, ) return actualAmount0, actualAmount1 }, @@ -818,7 +816,7 @@ func TestSwap_amount_over_liquidity(t *testing.T) { } func TestSwap_EXACTIN_OUT(t *testing.T) { - const addr = pusers.AddressOrName(consts.ROUTER_ADDR) + const addr = consts.ROUTER_ADDR tests := []struct { name string @@ -831,7 +829,7 @@ func TestSwap_EXACTIN_OUT(t *testing.T) { name: "EXACT IN - zeroForOne = false, token1:200", setupFn: func(t *testing.T) { InitialisePoolTest(t) - MintPositionAll(t, users.Resolve(admin)) + MintPositionAll(t, admin) TokenFaucet(t, gnsPath, addr) TokenApprove(t, gnsPath, addr, pool, maxApprove) }, @@ -841,11 +839,11 @@ func TestSwap_EXACTIN_OUT(t *testing.T) { wugnotPath, gnsPath, fee3000, - users.Resolve(alice), + alice, false, "200", consts.MAX_PRICE, - users.Resolve(addr), + addr, ) return actualAmount0, actualAmount1 }, @@ -856,7 +854,7 @@ func TestSwap_EXACTIN_OUT(t *testing.T) { name: "EXACT OUT - zeroForOne = false, token0:-200", setupFn: func(t *testing.T) { InitialisePoolTest(t) - MintPositionAll(t, users.Resolve(admin)) + MintPositionAll(t, admin) TokenFaucet(t, gnsPath, addr) TokenApprove(t, gnsPath, addr, pool, maxApprove) }, @@ -866,11 +864,11 @@ func TestSwap_EXACTIN_OUT(t *testing.T) { wugnotPath, gnsPath, fee3000, - users.Resolve(alice), + alice, false, "-200", consts.MAX_PRICE, - users.Resolve(addr), + addr, ) return actualAmount0, actualAmount1 }, @@ -881,7 +879,7 @@ func TestSwap_EXACTIN_OUT(t *testing.T) { name: "EXACT IN - zeroForOne = true, token0:200", setupFn: func(t *testing.T) { InitialisePoolTest(t) - MintPositionAll(t, users.Resolve(admin)) + MintPositionAll(t, admin) TokenFaucet(t, gnsPath, addr) TokenApprove(t, gnsPath, addr, pool, maxApprove) TokenApprove(t, wugnotPath, addr, pool, maxApprove) @@ -892,11 +890,11 @@ func TestSwap_EXACTIN_OUT(t *testing.T) { wugnotPath, gnsPath, fee3000, - users.Resolve(alice), + alice, true, "200", consts.MIN_PRICE, - users.Resolve(addr), + addr, ) return actualAmount0, actualAmount1 }, @@ -907,7 +905,7 @@ func TestSwap_EXACTIN_OUT(t *testing.T) { name: "EXACT OUT - zeroForOne = true, token1:-200", setupFn: func(t *testing.T) { InitialisePoolTest(t) - MintPositionAll(t, users.Resolve(admin)) + MintPositionAll(t, admin) TokenFaucet(t, gnsPath, addr) TokenFaucet(t, wugnotPath, addr) TokenApprove(t, gnsPath, addr, pool, maxApprove) @@ -919,11 +917,11 @@ func TestSwap_EXACTIN_OUT(t *testing.T) { wugnotPath, gnsPath, fee3000, - users.Resolve(alice), + alice, true, "-200", consts.MIN_PRICE, - users.Resolve(addr), + addr, ) return actualAmount0, actualAmount1 }, diff --git a/contract/r/gnoswap/pool/utils.gno b/contract/r/gnoswap/pool/utils.gno index 9e9256c97..c4c100742 100644 --- a/contract/r/gnoswap/pool/utils.gno +++ b/contract/r/gnoswap/pool/utils.gno @@ -5,7 +5,6 @@ import ( "strconv" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" i256 "gno.land/p/gnoswap/int256" u256 "gno.land/p/gnoswap/uint256" @@ -104,40 +103,6 @@ func toUint128(value *u256.Uint) *u256.Uint { return value } -// a2u converts a std.Address to a pusers.AddressOrName, ensuring the input address is valid. -// -// This function takes a `std.Address` and verifies its validity. If the address is invalid, -// the function triggers a panic with an appropriate error message. For valid addresses, -// it performs the conversion to `pusers.AddressOrName`. -// -// Parameters: -// - addr (std.Address): The input address to be converted. -// -// Returns: -// - pusers.AddressOrName: The converted address, wrapped as a `pusers.AddressOrName` type. -// -// Panics: -// - If the provided `addr` is invalid, the function will panic with an error indicating -// the invalid address. -// -// Notes: -// - The function relies on the `addr.IsValid()` method to determine the validity of the input address. -// - It uses `addDetailToError` to provide additional context for the error message when an invalid -// address is encountered. -// -// Example: -// converted := a2u(std.Address("validAddress")) // Successful conversion -// a2u(std.Address("")) // Panics due to invalid address -func a2u(addr std.Address) pusers.AddressOrName { - if !addr.IsValid() { - panic(addDetailToError( - errInvalidAddress, - addr.String(), - )) - } - return pusers.AddressOrName(addr) -} - // u256Min returns the smaller of two *u256.Uint values. // // This function compares two unsigned 256-bit integers and returns the smaller of the two. diff --git a/contract/r/gnoswap/pool/utils_test.gno b/contract/r/gnoswap/pool/utils_test.gno index 7ca4c0a4c..6ab861f77 100644 --- a/contract/r/gnoswap/pool/utils_test.gno +++ b/contract/r/gnoswap/pool/utils_test.gno @@ -4,52 +4,13 @@ import ( "std" "testing" - "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" i256 "gno.land/p/gnoswap/int256" u256 "gno.land/p/gnoswap/uint256" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/consts" ) -func TestA2U(t *testing.T) { - validAddr := testutils.TestAddress("validAddr") - invalidAddr := std.Address("invalidAddr") - - tests := []struct { - name string - expected string - address std.Address - shouldPanic bool - panicMsg string - }{ - { - name: "valid address", - expected: validAddr.String(), - address: validAddr, - }, - { - name: "invalid address", - expected: invalidAddr.String(), - address: invalidAddr, - shouldPanic: true, - panicMsg: "[GNOSWAP-POOL-023] invalid address || invalidAddr", - }, - } - - for _, tt := range tests { - t.Run(tt.name, func(t *testing.T) { - if tt.shouldPanic { - uassert.PanicsWithMessage(t, tt.panicMsg, func() { a2u(tt.address) }) - } else { - uassert.Equal(t, tt.expected, users.Resolve(a2u(tt.address)).String()) - } - }) - } -} - func TestU256Min(t *testing.T) { tests := []struct { name string @@ -233,31 +194,6 @@ func TestSafeConvertToInt128(t *testing.T) { } } -func TestA2u(t *testing.T) { - var ( - addr = std.Address("g1lmvrrrr4er2us84h2732sru76c9zl2nvknha8c") - ) - - tests := []struct { - name string - input std.Address - expected pusers.AddressOrName - }{ - { - name: "Success - a2u", - input: addr, - expected: pusers.AddressOrName(addr), - }, - } - - for _, tc := range tests { - t.Run(tc.name, func(t *testing.T) { - got := a2u(tc.input) - uassert.Equal(t, users.Resolve(got).String(), users.Resolve(tc.expected).String()) - }) - } -} - func TestDerivePkgAddr(t *testing.T) { var ( pkgPath = "gno.land/r/gnoswap/v1/position" diff --git a/contract/r/gnoswap/position/_helper_test.gno b/contract/r/gnoswap/position/_helper_test.gno index 30ccacef0..083a2bdb2 100644 --- a/contract/r/gnoswap/position/_helper_test.gno +++ b/contract/r/gnoswap/position/_helper_test.gno @@ -7,8 +7,6 @@ import ( "gno.land/p/demo/avl" "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" "gno.land/r/gnoswap/v1/gnft" @@ -24,13 +22,12 @@ import ( "gno.land/r/onbloc/qux" "gno.land/r/onbloc/usdc" - rr "gno.land/r/gnoswap/v1/router" sr "gno.land/r/gnoswap/v1/staker" ) const ( ugnotDenom string = "ugnot" - ugnotPath string = "gno.land/r/gnoswap/v1/pool:ugnot" + ugnotPath string = "ugnot" wugnotPath string = "gno.land/r/demo/wugnot" gnsPath string = "gno.land/r/gnoswap/v1/gns" barPath string = "gno.land/r/onbloc/bar" @@ -58,131 +55,15 @@ const ( addr02 = testutils.TestAddress("addr02") ) -type WugnotToken struct{} - -func (WugnotToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return wugnot.Transfer -} -func (WugnotToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return wugnot.TransferFrom -} -func (WugnotToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return wugnot.BalanceOf -} -func (WugnotToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return wugnot.Approve -} - -type GNSToken struct{} - -func (GNSToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return gns.Transfer -} -func (GNSToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return gns.TransferFrom -} -func (GNSToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return gns.BalanceOf -} -func (GNSToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return gns.Approve -} - -type BarToken struct{} - -func (BarToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return bar.Transfer -} -func (BarToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return bar.TransferFrom -} -func (BarToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return bar.BalanceOf -} -func (BarToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return bar.Approve -} - -type BazToken struct{} - -func (BazToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return baz.Transfer -} -func (BazToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return baz.TransferFrom -} -func (BazToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return baz.BalanceOf -} -func (BazToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return baz.Approve -} - -type FooToken struct{} - -func (FooToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return foo.Transfer -} -func (FooToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return foo.TransferFrom -} -func (FooToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return foo.BalanceOf -} -func (FooToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return foo.Approve -} - -type OBLToken struct{} - -func (OBLToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return obl.Transfer -} -func (OBLToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return obl.TransferFrom -} -func (OBLToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return obl.BalanceOf -} -func (OBLToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return obl.Approve -} - -type QuxToken struct{} - -func (QuxToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return qux.Transfer -} -func (QuxToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return qux.TransferFrom -} -func (QuxToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return qux.BalanceOf -} -func (QuxToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return qux.Approve -} - -func init() { - std.TestSetRealm(std.NewUserRealm("g1er355fkjksqpdtwmhf5penwa82p0rhqxkkyhk5")) - rr.RegisterGRC20Interface(wugnotPath, WugnotToken{}) - rr.RegisterGRC20Interface(gnsPath, GNSToken{}) - rr.RegisterGRC20Interface(barPath, BarToken{}) - rr.RegisterGRC20Interface(bazPath, BazToken{}) - rr.RegisterGRC20Interface(fooPath, FooToken{}) - rr.RegisterGRC20Interface(oblPath, OBLToken{}) - rr.RegisterGRC20Interface(quxPath, QuxToken{}) -} - var ( adminAddr = std.Address(consts.ADMIN) - admin = pusers.AddressOrName(adminAddr) - alice = pusers.AddressOrName(testutils.TestAddress("alice")) - bob = pusers.AddressOrName(testutils.TestAddress("bob")) - pool = pusers.AddressOrName(consts.POOL_ADDR) - protocolFee = pusers.AddressOrName(consts.PROTOCOL_FEE_ADDR) - router = pusers.AddressOrName(consts.ROUTER_ADDR) - adminRealm = std.NewUserRealm(users.Resolve(admin)) + admin = adminAddr + alice = testutils.TestAddress("alice") + bob = testutils.TestAddress("bob") + pool = consts.POOL_ADDR + protocolFee = consts.PROTOCOL_FEE_ADDR + router = consts.ROUTER_ADDR + adminRealm = std.NewUserRealm(admin) posRealm = std.NewCodeRealm(consts.POSITION_PATH) rouRealm = std.NewCodeRealm(consts.ROUTER_PATH) @@ -193,10 +74,10 @@ var ( func InitialisePoolTest(t *testing.T) { t.Helper() - ugnotFaucet(t, users.Resolve(admin), 100_000_000_000_000) - ugnotDeposit(t, users.Resolve(admin), 100_000_000_000_000) + ugnotFaucet(t, admin, 100_000_000_000_000) + ugnotDeposit(t, admin, 100_000_000_000_000) - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) TokenApprove(t, gnsPath, admin, pool, maxApprove) poolPath := pl.GetPoolPath(wugnotPath, gnsPath, fee3000) if !pl.DoesPoolPathExist(poolPath) { @@ -204,7 +85,7 @@ func InitialisePoolTest(t *testing.T) { } //2. create position - std.TestSetOrigCaller(users.Resolve(alice)) + std.TestSetOrigCaller(alice) TokenFaucet(t, wugnotPath, alice) TokenFaucet(t, gnsPath, alice) TokenApprove(t, wugnotPath, alice, pool, uint64(1000)) @@ -220,14 +101,14 @@ func InitialisePoolTest(t *testing.T) { "0", "0", max_timeout, - users.Resolve(alice), - users.Resolve(alice), + alice, + alice, ) } -func TokenFaucet(t *testing.T, tokenPath string, to pusers.AddressOrName) { +func TokenFaucet(t *testing.T, tokenPath string, to std.Address) { t.Helper() - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) defaultAmount := uint64(5_000_000_000) switch tokenPath { @@ -250,11 +131,11 @@ func TokenFaucet(t *testing.T, tokenPath string, to pusers.AddressOrName) { } } -func TokenBalance(t *testing.T, tokenPath string, owner pusers.AddressOrName) uint64 { +func TokenBalance(t *testing.T, tokenPath string, owner std.Address) uint64 { t.Helper() switch tokenPath { case wugnotPath: - return wugnot.BalanceOf(owner) + return wugnot.BalanceOf(common.AddrToUser(owner)) case gnsPath: return gns.BalanceOf(owner) case barPath: @@ -272,11 +153,11 @@ func TokenBalance(t *testing.T, tokenPath string, owner pusers.AddressOrName) ui } } -func TokenAllowance(t *testing.T, tokenPath string, owner, spender pusers.AddressOrName) uint64 { +func TokenAllowance(t *testing.T, tokenPath string, owner, spender std.Address) uint64 { t.Helper() switch tokenPath { case wugnotPath: - return wugnot.Allowance(owner, spender) + return wugnot.Allowance(common.AddrToUser(owner), common.AddrToUser(spender)) case gnsPath: return gns.Allowance(owner, spender) case barPath: @@ -294,7 +175,7 @@ func TokenAllowance(t *testing.T, tokenPath string, owner, spender pusers.Addres } } -func TokenApprove(t *testing.T, tokenPath string, owner, spender pusers.AddressOrName, amount uint64) { +func TokenApprove(t *testing.T, tokenPath string, owner, spender std.Address, amount uint64) { t.Helper() switch tokenPath { case wugnotPath: @@ -367,10 +248,10 @@ func MintPosition(t *testing.T, func MintPositionAll(t *testing.T, caller std.Address) { t.Helper() std.TestSetRealm(std.NewUserRealm(caller)) - TokenApprove(t, gnsPath, pusers.AddressOrName(caller), pool, maxApprove) - TokenApprove(t, gnsPath, pusers.AddressOrName(caller), router, maxApprove) - TokenApprove(t, wugnotPath, pusers.AddressOrName(caller), pool, maxApprove) - TokenApprove(t, wugnotPath, pusers.AddressOrName(caller), router, maxApprove) + TokenApprove(t, gnsPath, caller, pool, maxApprove) + TokenApprove(t, gnsPath, caller, router, maxApprove) + TokenApprove(t, wugnotPath, caller, pool, maxApprove) + TokenApprove(t, wugnotPath, caller, router, maxApprove) params := []struct { tickLower int32 @@ -522,7 +403,7 @@ func CreatePoolWithoutFee(t *testing.T) { std.TestSetRealm(adminRealm) // set pool create fee to 0 for testing pl.SetPoolCreationFeeByAdmin(0) - CreatePool(t, barPath, fooPath, fee500, common.TickMathGetSqrtRatioAtTick(0).ToString(), users.Resolve(admin)) + CreatePool(t, barPath, fooPath, fee500, common.TickMathGetSqrtRatioAtTick(0).ToString(), admin) } func MakeMintPositionWithoutFee(t *testing.T) (uint64, string, string, string) { @@ -533,7 +414,7 @@ func MakeMintPositionWithoutFee(t *testing.T) (uint64, string, string, string) { // set pool create fee to 0 for testing pl.SetPoolCreationFeeByAdmin(0) - CreatePool(t, barPath, fooPath, fee500, common.TickMathGetSqrtRatioAtTick(0).ToString(), users.Resolve(admin)) + CreatePool(t, barPath, fooPath, fee500, common.TickMathGetSqrtRatioAtTick(0).ToString(), admin) TokenApprove(t, barPath, admin, pool, consts.UINT64_MAX) TokenApprove(t, fooPath, admin, pool, consts.UINT64_MAX) @@ -550,26 +431,26 @@ func MakeMintPositionWithoutFee(t *testing.T) (uint64, string, string, string) { "0", "0", max_timeout, - users.Resolve(admin), - users.Resolve(admin), + admin, + admin, ) } -func LPTokenApprove(t *testing.T, owner, operator pusers.AddressOrName, tokenId uint64) { +func LPTokenApprove(t *testing.T, owner, operator std.Address, tokenId uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) gnft.Approve(operator, tokenIdFrom(tokenId)) } -func LPTokenStake(t *testing.T, owner pusers.AddressOrName, tokenId uint64) { +func LPTokenStake(t *testing.T, owner std.Address, tokenId uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) sr.StakeToken(tokenId) } -func LPTokenUnStake(t *testing.T, owner pusers.AddressOrName, tokenId uint64, unwrap bool) { +func LPTokenUnStake(t *testing.T, owner std.Address, tokenId uint64, unwrap bool) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) sr.UnstakeToken(tokenId, unwrap) } @@ -580,87 +461,87 @@ func getPoolFromLpTokenId(t *testing.T, lpTokenId uint64) *pl.Pool { return pl.GetPoolFromPoolPath(position.poolKey) } -func wugnotApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func wugnotApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) - wugnot.Approve(spender, amount) + std.TestSetRealm(std.NewUserRealm(owner)) + wugnot.Approve(common.AddrToUser(spender), amount) } -func gnsApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func gnsApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) gns.Approve(spender, amount) } -func barApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func barApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) bar.Approve(spender, amount) } -func bazApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func bazApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) baz.Approve(spender, amount) } -func fooApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func fooApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) foo.Approve(spender, amount) } -func oblApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func oblApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) obl.Approve(spender, amount) } -func quxApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func quxApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) qux.Approve(spender, amount) } -func wugnotTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func wugnotTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) - wugnot.Transfer(to, amount) + std.TestSetRealm(std.NewUserRealm(admin)) + wugnot.Transfer(common.AddrToUser(to), amount) } -func gnsTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func gnsTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) gns.Transfer(to, amount) } -func barTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func barTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) bar.Transfer(to, amount) } -func bazTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func bazTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) baz.Transfer(to, amount) } -func fooTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func fooTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) foo.Transfer(to, amount) } -func oblTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func oblTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) obl.Transfer(to, amount) } -func quxTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func quxTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) qux.Transfer(to, amount) } @@ -703,7 +584,7 @@ func ugnotBurn(t *testing.T, addr std.Address, denom string, amount int64) { func ugnotFaucet(t *testing.T, to std.Address, amount uint64) { t.Helper() - faucetAddress := users.Resolve(admin) + faucetAddress := admin std.TestSetOrigCaller(faucetAddress) if ugnotBalanceOf(t, faucetAddress) < amount { @@ -734,43 +615,42 @@ func burnTokens(t *testing.T) { // burn tokens for _, addr := range addrUsedInTest { - uAddr := a2u(addr) - burnFoo(uAddr) - burnBar(uAddr) - burnBaz(uAddr) - burnQux(uAddr) - burnObl(uAddr) - burnUsdc(uAddr) + burnFoo(addr) + burnBar(addr) + burnBaz(addr) + burnQux(addr) + burnObl(addr) + burnUsdc(addr) } } -func burnFoo(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnFoo(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) foo.Burn(addr, foo.BalanceOf(addr)) } -func burnBar(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnBar(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) bar.Burn(addr, bar.BalanceOf(addr)) } -func burnBaz(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnBaz(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) baz.Burn(addr, baz.BalanceOf(addr)) } -func burnQux(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnQux(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) qux.Burn(addr, qux.BalanceOf(addr)) } -func burnObl(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnObl(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) obl.Burn(addr, obl.BalanceOf(addr)) } -func burnUsdc(addr pusers.AddressOrName) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) +func burnUsdc(addr std.Address) { + std.TestSetRealm(std.NewUserRealm(admin)) usdc.Burn(addr, usdc.BalanceOf(addr)) } @@ -812,8 +692,8 @@ func TestBurnTokens(t *testing.T) { t.Skip("only available for single file(current file) test") burnTokens(t) - uassert.Equal(t, foo.BalanceOf(a2u(addr01)), uint64(0)) // 100_000_000 -> 0 - uassert.Equal(t, bar.BalanceOf(a2u(addr01)), uint64(0)) // 100_000_000 -> 0 + uassert.Equal(t, foo.BalanceOf(addr01), uint64(0)) // 100_000_000 -> 0 + uassert.Equal(t, bar.BalanceOf(addr01), uint64(0)) // 100_000_000 -> 0 } func TestBurnAllNFT(t *testing.T) { diff --git a/contract/r/gnoswap/position/api_test.gno b/contract/r/gnoswap/position/api_test.gno index acde02013..fa15de44c 100644 --- a/contract/r/gnoswap/position/api_test.gno +++ b/contract/r/gnoswap/position/api_test.gno @@ -6,7 +6,6 @@ import ( "gno.land/p/demo/json" "gno.land/p/demo/uassert" - "gno.land/r/demo/users" ) func setupPositions(t *testing.T) { @@ -17,7 +16,7 @@ func setupPositions(t *testing.T) { func TestApiGetPositions(t *testing.T) { setupPositions(t) - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) result := ApiGetPositions() @@ -257,7 +256,7 @@ func TestApiGetPositionsByPoolPath(t *testing.T) { } func TestApiGetPositionsByAddress(t *testing.T) { - address := users.Resolve(admin) + address := admin result := ApiGetPositionsByAddress(address) root, err := json.Unmarshal([]byte(result)) diff --git a/contract/r/gnoswap/position/getter_test.gno b/contract/r/gnoswap/position/getter_test.gno index 140517041..d50bacaa8 100644 --- a/contract/r/gnoswap/position/getter_test.gno +++ b/contract/r/gnoswap/position/getter_test.gno @@ -6,7 +6,6 @@ import ( "gno.land/p/demo/uassert" u256 "gno.land/p/gnoswap/uint256" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/consts" ) @@ -14,7 +13,7 @@ func setupPositionGetter(t *testing.T) { t.Helper() CreatePoolWithoutFee(t) - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) position := Position{ nonce: u256.Zero(), operator: consts.POSITION_ADDR, diff --git a/contract/r/gnoswap/position/liquidity_management_test.gno b/contract/r/gnoswap/position/liquidity_management_test.gno index 5662fbd61..a83469913 100644 --- a/contract/r/gnoswap/position/liquidity_management_test.gno +++ b/contract/r/gnoswap/position/liquidity_management_test.gno @@ -5,9 +5,7 @@ import ( "testing" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" u256 "gno.land/p/gnoswap/uint256" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" pl "gno.land/r/gnoswap/v1/pool" @@ -17,7 +15,7 @@ func InitialSetup(t *testing.T) { std.TestSetRealm(adminRealm) pl.SetPoolCreationFeeByAdmin(0) - CreatePool(t, gnsPath, barPath, fee3000, common.TickMathGetSqrtRatioAtTick(0).ToString(), users.Resolve(admin)) + CreatePool(t, gnsPath, barPath, fee3000, common.TickMathGetSqrtRatioAtTick(0).ToString(), admin) TokenFaucet(t, gnsPath, alice) TokenFaucet(t, barPath, alice) } @@ -42,7 +40,7 @@ func TestAddLiquidity(t *testing.T) { amount1Desired: u256.MustFromDecimal("2000000"), amount0Min: u256.MustFromDecimal("400000"), amount1Min: u256.MustFromDecimal("800000"), - caller: users.Resolve(alice), + caller: alice, }, expectPanic: false, expectedAmount0: "1000000", @@ -58,7 +56,7 @@ func TestAddLiquidity(t *testing.T) { amount1Desired: u256.MustFromDecimal("2000000"), amount0Min: u256.MustFromDecimal("1100000"), amount1Min: u256.MustFromDecimal("2200000"), - caller: users.Resolve(alice), + caller: alice, }, expectPanic: true, }, @@ -72,7 +70,7 @@ func TestAddLiquidity(t *testing.T) { amount1Desired: u256.Zero(), amount0Min: u256.Zero(), amount1Min: u256.Zero(), - caller: users.Resolve(alice), + caller: alice, }, expectPanic: true, expectedAmount0: "0", @@ -95,9 +93,9 @@ func TestAddLiquidity(t *testing.T) { }() InitialSetup(t) - std.TestSetRealm(std.NewUserRealm(users.Resolve(alice))) - TokenApprove(t, gnsPath, alice, pusers.AddressOrName(consts.POOL_ADDR), tt.params.amount0Desired.Uint64()) - TokenApprove(t, barPath, alice, pusers.AddressOrName(consts.POOL_ADDR), tt.params.amount1Desired.Uint64()) + std.TestSetRealm(std.NewUserRealm(alice)) + TokenApprove(t, gnsPath, alice, consts.POOL_ADDR, tt.params.amount0Desired.Uint64()) + TokenApprove(t, barPath, alice, consts.POOL_ADDR, tt.params.amount1Desired.Uint64()) _, amount0, amount1 := addLiquidity(tt.params) diff --git a/contract/r/gnoswap/position/native_token.gno b/contract/r/gnoswap/position/native_token.gno index b4ca707de..c07812ba9 100644 --- a/contract/r/gnoswap/position/native_token.gno +++ b/contract/r/gnoswap/position/native_token.gno @@ -7,6 +7,7 @@ import ( "gno.land/r/demo/wugnot" "gno.land/p/demo/ufmt" + "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" ) @@ -34,8 +35,8 @@ func wrap(ugnotAmount uint64, to std.Address) error { wugnotAddr := std.DerivePkgAddr(consts.WRAPPED_WUGNOT) transferUGNOT(consts.POSITION_ADDR, wugnotAddr, ugnotAmount) - wugnot.Deposit() // POSITION HAS WUGNOT - wugnot.Transfer(a2u(to), ugnotAmount) // SEND WUGNOT: POSITION -> USER + wugnot.Deposit() // POSITION HAS WUGNOT + wugnot.Transfer(common.AddrToUser(to), ugnotAmount) // SEND WUGNOT: POSITION -> USER return nil } @@ -55,9 +56,9 @@ func unwrap(wugnotAmount uint64, to std.Address) error { return ufmt.Errorf("amount(%d) is zero", wugnotAmount) } - wugnot.TransferFrom(a2u(to), a2u(consts.POSITION_ADDR), wugnotAmount) // SEND WUGNOT: USER -> POSITION - wugnot.Withdraw(wugnotAmount) // POSITION HAS UGNOT - transferUGNOT(consts.POSITION_ADDR, to, wugnotAmount) // SEND UGNOT: POSITION -> USER + wugnot.TransferFrom(common.AddrToUser(to), common.AddrToUser(consts.POSITION_ADDR), wugnotAmount) // SEND WUGNOT: USER -> POSITION + wugnot.Withdraw(wugnotAmount) // POSITION HAS UGNOT + transferUGNOT(consts.POSITION_ADDR, to, wugnotAmount) // SEND UGNOT: POSITION -> USER return nil } @@ -120,7 +121,7 @@ func isWrappedToken(tokenPath string) bool { // - If the `wrap` function fails to wrap the tokens. // - If there is a mismatch between the expected wrapped token amount and the user's balance after wrapping. func safeWrapNativeToken(amountDesired string, userAddress std.Address) uint64 { - beforeWugnotBalance := wugnot.BalanceOf(a2u(userAddress)) + beforeWugnotBalance := wugnot.BalanceOf(common.AddrToUser(userAddress)) sentNative := std.GetOrigSend() sentUgnotAmount := uint64(sentNative.AmountOf(consts.UGNOT)) @@ -148,7 +149,7 @@ func safeWrapNativeToken(amountDesired string, userAddress std.Address) uint64 { panic(newErrorWithDetail(errWugnotMinimum, err.Error())) } - afterWugnotBalance := wugnot.BalanceOf(a2u(userAddress)) + afterWugnotBalance := wugnot.BalanceOf(common.AddrToUser(userAddress)) diff := afterWugnotBalance - beforeWugnotBalance if diff != sentUgnotAmount { @@ -162,7 +163,7 @@ func safeWrapNativeToken(amountDesired string, userAddress std.Address) uint64 { func handleUnwrap(pToken0, pToken1 string, unwrapResult bool, userOldWugnotBalance uint64, to std.Address) { if (pToken0 == consts.WRAPPED_WUGNOT || pToken1 == consts.WRAPPED_WUGNOT) && unwrapResult { - userNewWugnotBalance := wugnot.BalanceOf(a2u(to)) + userNewWugnotBalance := wugnot.BalanceOf(common.AddrToUser(to)) leftOver := userNewWugnotBalance - userOldWugnotBalance if leftOver > 0 { unwrap(leftOver, to) diff --git a/contract/r/gnoswap/position/native_token_test.gno b/contract/r/gnoswap/position/native_token_test.gno index cc1426480..2ca8cd738 100644 --- a/contract/r/gnoswap/position/native_token_test.gno +++ b/contract/r/gnoswap/position/native_token_test.gno @@ -6,8 +6,6 @@ import ( "testing" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/consts" ) @@ -29,8 +27,8 @@ func TestTransferUGNOT(t *testing.T) { verify: func(t *testing.T, to std.Address) uint64 { return ugnotBalanceOf(t, to) }, - from: users.Resolve(alice), - to: users.Resolve(bob), + from: alice, + to: bob, expected: "0", shouldPanic: false, }, @@ -45,7 +43,7 @@ func TestTransferUGNOT(t *testing.T) { return ugnotBalanceOf(t, to) }, from: consts.POSITION_ADDR, - to: users.Resolve(bob), + to: bob, expected: "100", shouldPanic: false, }, @@ -104,8 +102,8 @@ func TestWrapInPosition(t *testing.T) { return wrap(999, to) }, verify: nil, - from: users.Resolve(alice), - to: users.Resolve(bob), + from: alice, + to: bob, expected: "amount(999) < minimum(1000)", shouldPanic: true, }, @@ -115,8 +113,8 @@ func TestWrapInPosition(t *testing.T) { return wrap(0, to) }, verify: nil, - from: users.Resolve(alice), - to: users.Resolve(bob), + from: alice, + to: bob, expected: "amount(0) < minimum(1000)", shouldPanic: true, }, @@ -128,10 +126,10 @@ func TestWrapInPosition(t *testing.T) { return wrap(1000, to) }, verify: func(t *testing.T, to std.Address) uint64 { - return TokenBalance(t, wugnotPath, pusers.AddressOrName(to)) + return TokenBalance(t, wugnotPath, to) }, from: consts.POSITION_ADDR, - to: users.Resolve(bob), + to: bob, expected: "1000", shouldPanic: false, }, @@ -190,8 +188,8 @@ func TestUnWrap(t *testing.T) { return unwrap(0, to) }, verify: nil, - from: users.Resolve(alice), - to: users.Resolve(bob), + from: alice, + to: bob, expected: "amount(0) is zero", shouldPanic: true, }, @@ -202,14 +200,14 @@ func TestUnWrap(t *testing.T) { std.TestSetRealm(std.NewUserRealm(from)) wrap(1000, to) std.TestSetRealm(std.NewUserRealm(to)) - TokenApprove(t, wugnotPath, pusers.AddressOrName(to), pusers.AddressOrName(from), 1000) + TokenApprove(t, wugnotPath, to, from, 1000) return unwrap(1000, to) }, verify: func(t *testing.T, to std.Address) uint64 { - return TokenBalance(t, wugnotPath, pusers.AddressOrName(to)) + return TokenBalance(t, wugnotPath, to) }, from: consts.POSITION_ADDR, - to: users.Resolve(bob), + to: bob, expected: "1000", shouldPanic: false, }, @@ -342,28 +340,28 @@ func TestSafeWrapNativeToken(t *testing.T) { { name: "Panic - Zero UGNOT", amountDesired: "50", - userAddress: users.Resolve(alice), + userAddress: alice, sentAmount: 0, expectPanic: true, }, { name: "Panic - Insufficient UGNOT", amountDesired: "150", - userAddress: users.Resolve(alice), + userAddress: alice, sentAmount: 100, expectPanic: true, }, { name: "Panic - Invalid Desired Amount", amountDesired: "invalid", - userAddress: users.Resolve(alice), + userAddress: alice, sentAmount: 200, expectPanic: true, }, { name: "Successful wrap - Exact Amount", amountDesired: "1050", - userAddress: users.Resolve(alice), + userAddress: alice, sentAmount: 1050, expectPanic: false, expectedWrap: 1050, @@ -371,7 +369,7 @@ func TestSafeWrapNativeToken(t *testing.T) { { name: "Excess Refund", amountDesired: "1000", - userAddress: users.Resolve(alice), + userAddress: alice, sentAmount: 1500, expectPanic: false, expectedWrap: 1000, @@ -379,7 +377,7 @@ func TestSafeWrapNativeToken(t *testing.T) { { name: "Boundary Test - Exact Match", amountDesired: "1000", - userAddress: users.Resolve(alice), + userAddress: alice, sentAmount: 1000, expectPanic: false, expectedWrap: 1000, @@ -387,14 +385,14 @@ func TestSafeWrapNativeToken(t *testing.T) { { name: "Zero Desired Amount", amountDesired: "0", - userAddress: users.Resolve(alice), + userAddress: alice, sentAmount: 100, expectPanic: true, }, { name: "Wrap Error Test", amountDesired: "100", - userAddress: users.Resolve(alice), + userAddress: alice, sentAmount: 100, expectPanic: true, // Simulate wrap error internally }, diff --git a/contract/r/gnoswap/position/position.gno b/contract/r/gnoswap/position/position.gno index 16c766b83..4ba81c7b0 100644 --- a/contract/r/gnoswap/position/position.gno +++ b/contract/r/gnoswap/position/position.gno @@ -802,7 +802,7 @@ func DecreaseLiquidity( // If unwrapResult is true and the position involves WUGNOT, any leftover WUGNOT will be // unwrapped to GNOT at the end of the operation. // Returns tokenId, liquidity, fee0, fee1, amount0, amount1, poolPath -func decreaseLiquidity(params DecreaseLiquidityParams) (uint64, *u256.Uint, *u256.Uint, *u256.Uint, *u256.Uint, *u256.Uint, string) { +func decreaseLiquidity(params DecreaseLiquidityParams) (uint64, *u256.Uint, *u256.Uint, *u256.Uint, *u256.Uint, *u256.Uint, string) verifyTokenIdAndOwnership(params.tokenId) // BEFORE DECREASE LIQUIDITY, COLLECT FEE FIRST @@ -828,7 +828,11 @@ func decreaseLiquidity(params DecreaseLiquidityParams) (uint64, *u256.Uint, *u25 } caller := getPrevAddr() - beforeWugnotBalance := wugnot.BalanceOf(a2u(caller)) // before unwrap + // NOTE: XXX + // Currently, wugnot is using users.AddressOrName so we have no choice but to change type for it. + // When, wugnot is using std.Address, we can remove converting. + // This applies to every wugnot related calls. + beforeWugnotBalance := wugnot.BalanceOf(common.AddrToUser(caller)) // before unwrap pToken0, pToken1, pFee := splitOf(position.poolKey) burn0, burn1 := pl.Burn(pToken0, pToken1, pFee, position.tickLower, position.tickUpper, liquidityToRemove.ToString()) @@ -906,7 +910,7 @@ func decreaseLiquidity(params DecreaseLiquidityParams) (uint64, *u256.Uint, *u25 handleUnwrap(pToken0, pToken1, params.unwrapResult, beforeWugnotBalance, caller) return params.tokenId, liquidityToRemove, fee0, fee1, collectAmount0, collectAmount1, position.poolKey -} + // CollectFee collects swap fee from the position // Returns tokenId, afterFee0, afterFee1, poolPath, origFee0, origFee1 @@ -944,7 +948,7 @@ func CollectFee(tokenId uint64, unwrapResult bool) (uint64, string, string, stri // check user wugnot amount // need this value to unwrap fee caller := getPrevAddr() - userWugnot := wugnot.BalanceOf(a2u(caller)) + userWugnot := wugnot.BalanceOf(common.AddrToUser(caller)) // collect fee amount0, amount1 := pl.Collect( diff --git a/contract/r/gnoswap/position/position_test.gno b/contract/r/gnoswap/position/position_test.gno index cddafe3dd..41f7fd16e 100644 --- a/contract/r/gnoswap/position/position_test.gno +++ b/contract/r/gnoswap/position/position_test.gno @@ -10,7 +10,6 @@ import ( "gno.land/p/demo/uassert" u256 "gno.land/p/gnoswap/uint256" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/consts" "gno.land/r/gnoswap/v1/gnft" ) @@ -180,28 +179,28 @@ func TestComputePositionKey(t *testing.T) { }{ { name: "Basic Position Key", - owner: users.Resolve(alice), + owner: alice, tickLower: -100, tickUpper: 200, expected: "ZzF2OWt4amNtOXRhMDQ3aDZsdGEwNDdoNmx0YTA0N2g2bHpkNDBnaF9fLTEwMF9fMjAw", // Base64 of "g1v9kxjcm9ta047h6lta047h6lta047h6lzd40gh__-100__200" }, { name: "Zero Ticks", - owner: users.Resolve(alice), + owner: alice, tickLower: 0, tickUpper: 0, expected: "ZzF2OWt4amNtOXRhMDQ3aDZsdGEwNDdoNmx0YTA0N2g2bHpkNDBnaF9fMF9fMA==", // Base64 of "g1v9kxjcm9ta047h6lta047h6lta047h6lzd40gh__0__0" }, { name: "Negative Lower Tick", - owner: users.Resolve(alice), + owner: alice, tickLower: -50, tickUpper: 150, expected: "ZzF2OWt4amNtOXRhMDQ3aDZsdGEwNDdoNmx0YTA0N2g2bHpkNDBnaF9fLTUwX18xNTA=", // Base64 of "g1v9kxjcm9ta047h6lta047h6lta047h6lzd40gh__-50__150" }, { name: "Same Tick Bounds", - owner: users.Resolve(alice), + owner: alice, tickLower: 300, tickUpper: 300, expected: "ZzF2OWt4amNtOXRhMDQ3aDZsdGEwNDdoNmx0YTA0N2g2bHpkNDBnaF9fMzAwX18zMDA=", // Base64 of "g1v9kxjcm9ta047h6lta047h6lta047h6lzd40gh__300__300" @@ -382,7 +381,7 @@ func TestProcessTokens(t *testing.T) { token1: "tokenB", amount0Desired: "100", amount1Desired: "200", - caller: users.Resolve(alice), + caller: alice, expected0: "tokenA", expected1: "tokenB", isNative0: false, @@ -397,7 +396,7 @@ func TestProcessTokens(t *testing.T) { token1: gnsPath, amount0Desired: "1300", amount1Desired: "200", - caller: users.Resolve(alice), + caller: alice, expected0: consts.WRAPPED_WUGNOT, expected1: "gno.land/r/gnoswap/v1/gns", isNative0: true, @@ -519,7 +518,7 @@ func TestProcessMintInput(t *testing.T) { amount1Min: "1800", tickLower: -10000, tickUpper: 10000, - caller: users.Resolve(alice), + caller: alice, }, expectedToken0: gnsPath, expectedToken1: barPath, @@ -540,7 +539,7 @@ func TestProcessMintInput(t *testing.T) { amount1Min: "800", tickLower: -20000, tickUpper: 20000, - caller: users.Resolve(alice), + caller: alice, }, expectedToken0: gnsPath, expectedToken1: barPath, @@ -561,7 +560,7 @@ func TestProcessMintInput(t *testing.T) { amount1Min: "1800", tickLower: -5000, tickUpper: 5000, - caller: users.Resolve(alice), + caller: alice, }, expectError: true, }, @@ -629,8 +628,8 @@ func TestMintInternal(t *testing.T) { amount1Desired: u256.MustFromDecimal("10000"), amount0Min: u256.MustFromDecimal("10"), amount1Min: u256.MustFromDecimal("10"), - caller: users.Resolve(alice), - mintTo: users.Resolve(alice), + caller: alice, + mintTo: alice, }, expectedTokenId: 101, expectedLiquidity: "2005104", @@ -650,8 +649,8 @@ func TestMintInternal(t *testing.T) { amount1Desired: u256.MustFromDecimal("10000"), amount0Min: u256.MustFromDecimal("10"), amount1Min: u256.MustFromDecimal("10"), - caller: users.Resolve(alice), - mintTo: users.Resolve(alice), + caller: alice, + mintTo: alice, }, expectPanic: true, expectedError: "token id already exists", @@ -669,8 +668,8 @@ func TestMintInternal(t *testing.T) { amount1Desired: u256.Zero(), amount0Min: u256.NewUint(5), amount1Min: u256.NewUint(5), - caller: users.Resolve(alice), - mintTo: users.Resolve(alice), + caller: alice, + mintTo: alice, }, expectPanic: true, expectedError: "[GNOSWAP-POOL-010] zero liquidity", @@ -732,8 +731,8 @@ func TestMint(t *testing.T) { minAmount0: "950000", minAmount1: "900000", deadline: time.Now().Add(10 * time.Minute).Unix(), - mintTo: users.Resolve(alice), - caller: users.Resolve(alice), + mintTo: alice, + caller: alice, expectPanic: false, expectedAmount0: 1000000, expectedAmount1: 1000000, @@ -750,8 +749,8 @@ func TestMint(t *testing.T) { minAmount0: "950000", minAmount1: "1900000", deadline: time.Now().Add(-10 * time.Minute).Unix(), - mintTo: users.Resolve(alice), - caller: users.Resolve(alice), + mintTo: alice, + caller: alice, expectPanic: true, expectedError: "[GNOSWAP-POSITION-007] transaction expired || transaction too old, now(1234567890) > deadline(1234567290)", expectedAmount0: 950000, @@ -769,8 +768,8 @@ func TestMint(t *testing.T) { minAmount0: "950000", minAmount1: "1900000", deadline: time.Now().Add(10 * time.Minute).Unix(), - mintTo: users.Resolve(alice), - caller: users.Resolve(alice), + mintTo: alice, + caller: alice, expectPanic: true, expectedError: "[GNOSWAP-POOL-024] tickLower is greater than or equal to tickUpper || tickLower(600), tickUpper(500)", expectedAmount0: 950000, @@ -788,8 +787,8 @@ func TestMint(t *testing.T) { minAmount0: "950000", minAmount1: "1900000", deadline: time.Now().Add(10 * time.Minute).Unix(), - mintTo: users.Resolve(admin), - caller: users.Resolve(alice), + mintTo: admin, + caller: alice, expectPanic: true, expectedError: "[GNOSWAP-POSITION-012] invalid address || (g1v9kxjcm9ta047h6lta047h6lta047h6lzd40gh, g17290cwvmrapvp869xfnhhawa8sm9edpufzat7d)", expectedAmount0: 950000, @@ -847,7 +846,7 @@ func TestMint(t *testing.T) { } func TestIncreaseLiquidityInternal(t *testing.T) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) position := Position{ poolKey: "gno.land/r/onbloc/bar:gno.land/r/onbloc/foo:500", tickLower: -10000, @@ -922,7 +921,7 @@ func TestIncreaseLiquidityInternal(t *testing.T) { } func TestIncreaseLiquidity(t *testing.T) { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) tests := []struct { name string tokenId uint64 @@ -1105,7 +1104,7 @@ func TestDecreaseLiquidity(t *testing.T) { } CreatePoolWithoutFee(t) - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) TokenApprove(t, barPath, admin, pool, consts.UINT64_MAX) TokenApprove(t, fooPath, admin, pool, consts.UINT64_MAX) tokenId, _, _, _ := Mint( @@ -1119,8 +1118,8 @@ func TestDecreaseLiquidity(t *testing.T) { "0", "0", time.Now().Add(time.Hour).Unix(), - users.Resolve(admin), - users.Resolve(admin), + admin, + admin, ) for _, tc := range tests { t.Run(tc.name, func(t *testing.T) { @@ -1226,7 +1225,7 @@ func TestCollectFees(t *testing.T) { } CreatePoolWithoutFee(t) - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) TokenApprove(t, barPath, admin, pool, consts.UINT64_MAX) TokenApprove(t, fooPath, admin, pool, consts.UINT64_MAX) @@ -1242,8 +1241,8 @@ func TestCollectFees(t *testing.T) { "0", "0", time.Now().Add(time.Hour).Unix(), - users.Resolve(admin), - users.Resolve(admin), + admin, + admin, ) for _, tt := range tests { @@ -1345,7 +1344,7 @@ func TestReposition(t *testing.T) { } CreatePoolWithoutFee(t) - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) TokenApprove(t, barPath, admin, pool, consts.UINT64_MAX) TokenApprove(t, fooPath, admin, pool, consts.UINT64_MAX) @@ -1361,8 +1360,8 @@ func TestReposition(t *testing.T) { "0", "0", time.Now().Add(time.Hour).Unix(), - users.Resolve(admin), - users.Resolve(admin), + admin, + admin, ) for _, tt := range tests { diff --git a/contract/r/gnoswap/position/utils.gno b/contract/r/gnoswap/position/utils.gno index 012107392..eabca9329 100644 --- a/contract/r/gnoswap/position/utils.gno +++ b/contract/r/gnoswap/position/utils.gno @@ -7,7 +7,6 @@ import ( "gno.land/p/demo/grc/grc721" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" @@ -172,18 +171,6 @@ func assertValidLiquidityRatio(ratio uint64) { } } -// a2u converts std.Address to pusers.AddressOrName. -// pusers is a package that contains the user-related functions. -// -// Input: -// - addr: the address to convert -// -// Output: -// - pusers.AddressOrName: the converted address -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} - // derivePkgAddr derives the Realm address from it's pkgpath parameter func derivePkgAddr(pkgPath string) std.Address { return std.DerivePkgAddr(pkgPath) @@ -368,7 +355,6 @@ func verifySlippageAmounts(amount0, amount1, amount0Min, amount1Min *u256.Uint) } } - func formatUint(v interface{}) string { switch v := v.(type) { case uint8: diff --git a/contract/r/gnoswap/position/utils_test.gno b/contract/r/gnoswap/position/utils_test.gno index 16a5a6611..8264b66e1 100644 --- a/contract/r/gnoswap/position/utils_test.gno +++ b/contract/r/gnoswap/position/utils_test.gno @@ -9,8 +9,6 @@ import ( "gno.land/p/demo/grc/grc721" "gno.land/p/demo/uassert" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" ) @@ -94,8 +92,8 @@ func TestAssertTokenExists(t *testing.T) { func TestAssertOnlyOwnerOfToken(t *testing.T) { // Mock token ownership mockTokenId := uint64(1) - mockOwner := users.Resolve(admin) - mockCaller := users.Resolve(alice) + mockOwner := admin + mockCaller := alice //MakeMintPositionWithoutFee(t) t.Run("Token Owned by Caller - No Panic", func(t *testing.T) { @@ -184,7 +182,7 @@ func TestAssertOnlyNotHalted(t *testing.T) { assertOnlyNotHalted() }) } else { - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) common.SetHaltByAdmin(true) uassert.PanicsWithMessage(t, tc.panicMsg, func() { assertOnlyNotHalted() @@ -347,29 +345,6 @@ func TestAssertValidNumberString(t *testing.T) { } } -func TestA2u(t *testing.T) { - addr := std.Address("g1lmvrrrr4er2us84h2732sru76c9zl2nvknha8c") - - tests := []struct { - name string - input std.Address - expected pusers.AddressOrName - }{ - { - name: "Success - a2u", - input: addr, - expected: pusers.AddressOrName(addr), - }, - } - - for _, tc := range tests { - t.Run(tc.name, func(t *testing.T) { - got := a2u(tc.input) - uassert.Equal(t, users.Resolve(got).String(), users.Resolve(tc.expected).String()) - }) - } -} - func TestDerivePkgAddr(t *testing.T) { pkgPath := "gno.land/r/gnoswap/v1/position" tests := []struct { @@ -642,13 +617,13 @@ func TestIsOwner(t *testing.T) { { name: "Fail - is not owner", tokenId: 1, - addr: users.Resolve(alice), + addr: alice, expected: false, }, { name: "Success - is owner", tokenId: 1, - addr: users.Resolve(admin), + addr: admin, expected: true, }, } @@ -665,7 +640,7 @@ func TestIsOperator(t *testing.T) { tests := []struct { name string tokenId uint64 - addr pusers.AddressOrName + addr std.Address expected bool }{ { @@ -686,7 +661,7 @@ func TestIsOperator(t *testing.T) { if tc.expected { LPTokenApprove(t, admin, tc.addr, tc.tokenId) } - got := isOperator(tc.tokenId, users.Resolve(tc.addr)) + got := isOperator(tc.tokenId, tc.addr) uassert.Equal(t, tc.expected, got) }) } @@ -695,8 +670,8 @@ func TestIsOperator(t *testing.T) { func TestIsStaked(t *testing.T) { tests := []struct { name string - owner pusers.AddressOrName - operator pusers.AddressOrName + owner std.Address + operator std.Address tokenId uint64 expected bool }{ @@ -726,7 +701,7 @@ func TestIsStaked(t *testing.T) { t.Run(tc.name, func(t *testing.T) { if tc.expected && tc.owner == tc.operator { MakeMintPositionWithoutFee(t) - LPTokenApprove(t, tc.owner, pusers.AddressOrName(consts.STAKER_ADDR), tc.tokenId) + LPTokenApprove(t, tc.owner, consts.STAKER_ADDR, tc.tokenId) LPTokenStake(t, tc.owner, tc.tokenId) } got := isStaked(tokenIdFrom(tc.tokenId)) @@ -741,8 +716,8 @@ func TestIsStaked(t *testing.T) { func TestIsOwnerOrOperator(t *testing.T) { tests := []struct { name string - owner pusers.AddressOrName - operator pusers.AddressOrName + owner std.Address + operator std.Address tokenId uint64 expected bool }{ @@ -775,9 +750,9 @@ func TestIsOwnerOrOperator(t *testing.T) { } var got bool if tc.owner == tc.operator { - got = isOwnerOrOperator(users.Resolve(tc.owner), tc.tokenId) + got = isOwnerOrOperator(tc.owner, tc.tokenId) } else { - got = isOwnerOrOperator(users.Resolve(tc.operator), tc.tokenId) + got = isOwnerOrOperator(tc.operator, tc.tokenId) } uassert.Equal(t, tc.expected, got) }) @@ -787,8 +762,8 @@ func TestIsOwnerOrOperator(t *testing.T) { func TestIsOwnerOrOperatorWithStake(t *testing.T) { tests := []struct { name string - owner pusers.AddressOrName - operator pusers.AddressOrName + owner std.Address + operator std.Address tokenId uint64 isStake bool expected bool @@ -814,10 +789,10 @@ func TestIsOwnerOrOperatorWithStake(t *testing.T) { t.Run(tc.name, func(t *testing.T) { if tc.isStake { tokenId, _, _, _ := MakeMintPositionWithoutFee(t) - LPTokenApprove(t, pusers.AddressOrName(tc.owner), pusers.AddressOrName(consts.STAKER_ADDR), tc.tokenId) + LPTokenApprove(t, tc.owner, consts.STAKER_ADDR, tc.tokenId) LPTokenStake(t, tc.owner, tc.tokenId) } - got := isOwnerOrOperator(users.Resolve(tc.operator), tc.tokenId) + got := isOwnerOrOperator(tc.operator, tc.tokenId) uassert.Equal(t, tc.expected, got) }) } diff --git a/contract/r/gnoswap/protocol_fee/protocol_fee_test.gno b/contract/r/gnoswap/protocol_fee/protocol_fee_test.gno index 9cb75b770..55edc7911 100644 --- a/contract/r/gnoswap/protocol_fee/protocol_fee_test.gno +++ b/contract/r/gnoswap/protocol_fee/protocol_fee_test.gno @@ -7,7 +7,6 @@ import ( "gno.land/p/demo/testutils" "gno.land/p/demo/uassert" - "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" "gno.land/r/onbloc/bar" @@ -16,7 +15,6 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) adminRealm = std.NewUserRealm(adminAddr) ) @@ -24,26 +22,26 @@ func TestDistributeProtocolFee(t *testing.T) { // admin > protocol_fee // send qux, bar for testing std.TestSetRealm(adminRealm) - bar.Transfer(common.AddrToUser(consts.PROTOCOL_FEE_ADDR), 1000) - qux.Transfer(common.AddrToUser(consts.PROTOCOL_FEE_ADDR), 1000) + bar.Transfer(consts.PROTOCOL_FEE_ADDR, 1000) + qux.Transfer(consts.PROTOCOL_FEE_ADDR, 1000) - uassert.Equal(t, bar.BalanceOf(common.AddrToUser(consts.PROTOCOL_FEE_ADDR)), uint64(1000)) - uassert.Equal(t, bar.BalanceOf(common.AddrToUser(consts.DEV_OPS)), uint64(0)) - uassert.Equal(t, bar.BalanceOf(common.AddrToUser(consts.GOV_STAKER_ADDR)), uint64(0)) + uassert.Equal(t, bar.BalanceOf(consts.PROTOCOL_FEE_ADDR), uint64(1000)) + uassert.Equal(t, bar.BalanceOf(consts.DEV_OPS), uint64(0)) + uassert.Equal(t, bar.BalanceOf(consts.GOV_STAKER_ADDR), uint64(0)) - uassert.Equal(t, qux.BalanceOf(common.AddrToUser(consts.PROTOCOL_FEE_ADDR)), uint64(1000)) - uassert.Equal(t, qux.BalanceOf(common.AddrToUser(consts.DEV_OPS)), uint64(0)) - uassert.Equal(t, qux.BalanceOf(common.AddrToUser(consts.GOV_STAKER_ADDR)), uint64(0)) + uassert.Equal(t, qux.BalanceOf(consts.PROTOCOL_FEE_ADDR), uint64(1000)) + uassert.Equal(t, qux.BalanceOf(consts.DEV_OPS), uint64(0)) + uassert.Equal(t, qux.BalanceOf(consts.GOV_STAKER_ADDR), uint64(0)) DistributeProtocolFee() - uassert.Equal(t, bar.BalanceOf(common.AddrToUser(consts.PROTOCOL_FEE_ADDR)), uint64(0)) - uassert.Equal(t, bar.BalanceOf(common.AddrToUser(consts.DEV_OPS)), uint64(0)) - uassert.Equal(t, bar.BalanceOf(common.AddrToUser(consts.GOV_STAKER_ADDR)), uint64(1000)) + uassert.Equal(t, bar.BalanceOf(consts.PROTOCOL_FEE_ADDR), uint64(0)) + uassert.Equal(t, bar.BalanceOf(consts.DEV_OPS), uint64(0)) + uassert.Equal(t, bar.BalanceOf(consts.GOV_STAKER_ADDR), uint64(1000)) - uassert.Equal(t, qux.BalanceOf(common.AddrToUser(consts.PROTOCOL_FEE_ADDR)), uint64(0)) - uassert.Equal(t, qux.BalanceOf(common.AddrToUser(consts.DEV_OPS)), uint64(0)) - uassert.Equal(t, qux.BalanceOf(common.AddrToUser(consts.GOV_STAKER_ADDR)), uint64(1000)) + uassert.Equal(t, qux.BalanceOf(consts.PROTOCOL_FEE_ADDR), uint64(0)) + uassert.Equal(t, qux.BalanceOf(consts.DEV_OPS), uint64(0)) + uassert.Equal(t, qux.BalanceOf(consts.GOV_STAKER_ADDR), uint64(1000)) } func TestSetDevOpsPctByAdminNoPermission(t *testing.T) { diff --git a/contract/r/gnoswap/protocol_fee/tests/0_init_token_register_test.gno b/contract/r/gnoswap/protocol_fee/tests/0_init_token_register_test.gno deleted file mode 100644 index f1f9cc3ac..000000000 --- a/contract/r/gnoswap/protocol_fee/tests/0_init_token_register_test.gno +++ /dev/null @@ -1,144 +0,0 @@ -package protocol_fee - -import ( - "std" - - "gno.land/r/onbloc/foo" - - "gno.land/r/onbloc/bar" - - "gno.land/r/onbloc/baz" - - "gno.land/r/onbloc/qux" - - "gno.land/r/demo/wugnot" - - "gno.land/r/onbloc/obl" - - "gno.land/r/gnoswap/v1/gns" - - "gno.land/r/gnoswap/v1/consts" - - pusers "gno.land/p/demo/users" -) - -type FooToken struct{} - -func (FooToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return foo.Transfer -} -func (FooToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return foo.TransferFrom -} -func (FooToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return foo.BalanceOf -} -func (FooToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return foo.Approve -} - -type BarToken struct{} - -func (BarToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return bar.Transfer -} -func (BarToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return bar.TransferFrom -} -func (BarToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return bar.BalanceOf -} -func (BarToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return bar.Approve -} - -type BazToken struct{} - -func (BazToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return baz.Transfer -} -func (BazToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return baz.TransferFrom -} -func (BazToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return baz.BalanceOf -} -func (BazToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return baz.Approve -} - -type QuxToken struct{} - -func (QuxToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return qux.Transfer -} -func (QuxToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return qux.TransferFrom -} -func (QuxToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return qux.BalanceOf -} -func (QuxToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return qux.Approve -} - -type WugnotToken struct{} - -func (WugnotToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return wugnot.Transfer -} -func (WugnotToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return wugnot.TransferFrom -} -func (WugnotToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return wugnot.BalanceOf -} -func (WugnotToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return wugnot.Approve -} - -type OBLToken struct{} - -func (OBLToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return obl.Transfer -} -func (OBLToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return obl.TransferFrom -} -func (OBLToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return obl.BalanceOf -} -func (OBLToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return obl.Approve -} - -type GNSToken struct{} - -func (GNSToken) Transfer() func(to pusers.AddressOrName, amount uint64) { - return gns.Transfer -} - -func (GNSToken) TransferFrom() func(from, to pusers.AddressOrName, amount uint64) { - return gns.TransferFrom -} - -func (GNSToken) BalanceOf() func(owner pusers.AddressOrName) uint64 { - return gns.BalanceOf -} - -func (GNSToken) Approve() func(spender pusers.AddressOrName, amount uint64) { - return gns.Approve -} - -func init() { - std.TestSetRealm(std.NewUserRealm(consts.TOKEN_REGISTER)) - - // PROTOCOL_FEE - RegisterGRC20Interface("gno.land/r/onbloc/bar", BarToken{}) - RegisterGRC20Interface("gno.land/r/onbloc/foo", FooToken{}) - RegisterGRC20Interface("gno.land/r/onbloc/baz", BazToken{}) - RegisterGRC20Interface("gno.land/r/onbloc/qux", QuxToken{}) - RegisterGRC20Interface("gno.land/r/demo/wugnot", WugnotToken{}) - RegisterGRC20Interface("gno.land/r/onbloc/obl", OBLToken{}) - RegisterGRC20Interface("gno.land/r/gnoswap/v1/gns", GNSToken{}) -} diff --git a/contract/r/gnoswap/protocol_fee/tests/_helper_test.gno b/contract/r/gnoswap/protocol_fee/tests/_helper_test.gno deleted file mode 100644 index 1694bdb05..000000000 --- a/contract/r/gnoswap/protocol_fee/tests/_helper_test.gno +++ /dev/null @@ -1,47 +0,0 @@ -package protocol_fee - -import ( - "std" - - "gno.land/r/gnoswap/v1/consts" -) - -var ( - admin std.Address = consts.ADMIN - - fooPath string = "gno.land/r/onbloc/foo" - barPath string = "gno.land/r/onbloc/bar" - bazPath string = "gno.land/r/onbloc/baz" - quxPath string = "gno.land/r/onbloc/qux" - - oblPath string = "gno.land/r/onbloc/obl" - // wugnotPath string = "gno.land/r/demo/wugnot" // from consts - // gnsPath string = "gno.land/r/gnoswap/v1/gns" // from consts - - fee100 uint32 = 100 - fee500 uint32 = 500 - fee3000 uint32 = 3000 - - max_timeout int64 = 9999999999 -) - -// Realms to mock frames -var ( - adminRealm = std.NewUserRealm(admin) - - posRealm = std.NewCodeRealm(consts.POSITION_PATH) - rouRealm = std.NewCodeRealm(consts.ROUTER_PATH) - stkRealm = std.NewCodeRealm(consts.STAKER_PATH) -) - -/* HELPER */ -func ugnotBalanceOf(addr std.Address) uint64 { - testBanker := std.GetBanker(std.BankerTypeRealmIssue) - - coins := testBanker.GetCoins(addr) - if len(coins) == 0 { - return 0 - } - - return uint64(coins.AmountOf("ugnot")) -} diff --git a/contract/r/gnoswap/protocol_fee/token_list_with_amount_test.gno b/contract/r/gnoswap/protocol_fee/token_list_with_amount_test.gno index 12d1dd0f9..76b58cdf5 100644 --- a/contract/r/gnoswap/protocol_fee/token_list_with_amount_test.gno +++ b/contract/r/gnoswap/protocol_fee/token_list_with_amount_test.gno @@ -9,13 +9,15 @@ import ( "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" + _ "gno.land/r/onbloc/baz" + _ "gno.land/r/onbloc/foo" ) var ( dummyRealm = std.NewCodeRealm("gno.land/r/dummy") adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) ) diff --git a/contract/r/gnoswap/router/_helper_test.gno b/contract/r/gnoswap/router/_helper_test.gno index 94523a131..b6015efa7 100644 --- a/contract/r/gnoswap/router/_helper_test.gno +++ b/contract/r/gnoswap/router/_helper_test.gno @@ -5,8 +5,6 @@ import ( "testing" "gno.land/p/demo/testutils" - pusers "gno.land/p/demo/users" - "gno.land/r/demo/users" "gno.land/r/demo/wugnot" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" @@ -69,15 +67,15 @@ var ( ) var ( - admin = pusers.AddressOrName(consts.ADMIN) - adminAddr = users.Resolve(admin) - alice = pusers.AddressOrName(testutils.TestAddress("alice")) - bob = pusers.AddressOrName(testutils.TestAddress("bob")) - pool = pusers.AddressOrName(consts.POOL_ADDR) - position = pusers.AddressOrName(consts.POSITION_ADDR) - router = pusers.AddressOrName(consts.ROUTER_ADDR) - protocolFee = pusers.AddressOrName(consts.PROTOCOL_FEE_ADDR) - adminRealm = std.NewUserRealm(users.Resolve(admin)) + admin = consts.ADMIN + adminAddr = admin + alice = testutils.TestAddress("alice") + bob = testutils.TestAddress("bob") + pool = consts.POOL_ADDR + position = consts.POSITION_ADDR + router = consts.ROUTER_ADDR + protocolFee = consts.PROTOCOL_FEE_ADDR + adminRealm = std.NewUserRealm(admin) posRealm = std.NewCodeRealm(consts.POSITION_PATH) // addresses used in tests @@ -87,24 +85,24 @@ var ( func InitialisePoolTest(t *testing.T) { t.Helper() - ugnotFaucet(t, users.Resolve(admin), 100_000_000_000_000) - ugnotDeposit(t, users.Resolve(admin), 100_000_000_000_000) + ugnotFaucet(t, admin, 100_000_000_000_000) + ugnotDeposit(t, admin, 100_000_000_000_000) - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) TokenApprove(t, gnsPath, admin, pool, maxApprove) - CreatePool(t, wugnotPath, gnsPath, fee3000, "79228162514264337593543950336", users.Resolve(admin)) + CreatePool(t, wugnotPath, gnsPath, fee3000, "79228162514264337593543950336", admin) // 2. create position - std.TestSetOrigCaller(users.Resolve(alice)) + std.TestSetOrigCaller(alice) TokenFaucet(t, wugnotPath, alice) TokenFaucet(t, gnsPath, alice) TokenApprove(t, wugnotPath, alice, pool, uint64(1000)) TokenApprove(t, gnsPath, alice, pool, uint64(1000)) } -func TokenFaucet(t *testing.T, tokenPath string, to pusers.AddressOrName) { +func TokenFaucet(t *testing.T, tokenPath string, to std.Address) { t.Helper() - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) defaultAmount := uint64(5_000_000_000) switch tokenPath { @@ -127,11 +125,11 @@ func TokenFaucet(t *testing.T, tokenPath string, to pusers.AddressOrName) { } } -func TokenBalance(t *testing.T, tokenPath string, owner pusers.AddressOrName) uint64 { +func TokenBalance(t *testing.T, tokenPath string, owner std.Address) uint64 { t.Helper() switch tokenPath { case wugnotPath: - return wugnot.BalanceOf(owner) + return wugnot.BalanceOf(common.AddrToUser(owner)) case gnsPath: return gns.BalanceOf(owner) case barPath: @@ -149,11 +147,11 @@ func TokenBalance(t *testing.T, tokenPath string, owner pusers.AddressOrName) ui } } -func TokenAllowance(t *testing.T, tokenPath string, owner, spender pusers.AddressOrName) uint64 { +func TokenAllowance(t *testing.T, tokenPath string, owner, spender std.Address) uint64 { t.Helper() switch tokenPath { case wugnotPath: - return wugnot.Allowance(owner, spender) + return wugnot.Allowance(common.AddrToUser(owner), common.AddrToUser(spender)) case gnsPath: return gns.Allowance(owner, spender) case barPath: @@ -171,7 +169,7 @@ func TokenAllowance(t *testing.T, tokenPath string, owner, spender pusers.Addres } } -func TokenApprove(t *testing.T, tokenPath string, owner, spender pusers.AddressOrName, amount uint64) { +func TokenApprove(t *testing.T, tokenPath string, owner, spender std.Address, amount uint64) { t.Helper() switch tokenPath { case wugnotPath: @@ -210,99 +208,99 @@ func CreatePool(t *testing.T, } } -func LPTokenStake(t *testing.T, owner pusers.AddressOrName, tokenId uint64) { +func LPTokenStake(t *testing.T, owner std.Address, tokenId uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) sr.StakeToken(tokenId) } -func LPTokenUnStake(t *testing.T, owner pusers.AddressOrName, tokenId uint64, unwrap bool) { +func LPTokenUnStake(t *testing.T, owner std.Address, tokenId uint64, unwrap bool) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) sr.UnstakeToken(tokenId, unwrap) } -func wugnotApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func wugnotApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) - wugnot.Approve(spender, amount) + std.TestSetRealm(std.NewUserRealm(owner)) + wugnot.Approve(common.AddrToUser(spender), amount) } -func gnsApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func gnsApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) gns.Approve(spender, amount) } -func barApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func barApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) bar.Approve(spender, amount) } -func bazApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func bazApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) baz.Approve(spender, amount) } -func fooApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func fooApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) foo.Approve(spender, amount) } -func oblApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func oblApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) obl.Approve(spender, amount) } -func quxApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func quxApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) qux.Approve(spender, amount) } -func wugnotTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func wugnotTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) - wugnot.Transfer(to, amount) + std.TestSetRealm(std.NewUserRealm(admin)) + wugnot.Transfer(common.AddrToUser(to), amount) } -func gnsTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func gnsTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) gns.Transfer(to, amount) } -func barTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func barTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) bar.Transfer(to, amount) } -func bazTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func bazTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) baz.Transfer(to, amount) } -func fooTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func fooTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) foo.Transfer(to, amount) } -func oblTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func oblTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) obl.Transfer(to, amount) } -func quxTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func quxTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) qux.Transfer(to, amount) } @@ -345,7 +343,7 @@ func ugnotBurn(t *testing.T, addr std.Address, denom string, amount int64) { func ugnotFaucet(t *testing.T, to std.Address, amount uint64) { t.Helper() - faucetAddress := users.Resolve(admin) + faucetAddress := admin std.TestSetOrigCaller(faucetAddress) if ugnotBalanceOf(t, faucetAddress) < amount { @@ -369,10 +367,10 @@ func CreatePoolWithoutFee(t *testing.T) { std.TestSetRealm(adminRealm) // set pool create fee to 0 for testing pl.SetPoolCreationFeeByAdmin(0) - CreatePool(t, barPath, fooPath, fee500, common.TickMathGetSqrtRatioAtTick(0).ToString(), users.Resolve(admin)) - CreatePool(t, bazPath, fooPath, fee3000, common.TickMathGetSqrtRatioAtTick(0).ToString(), users.Resolve(admin)) - CreatePool(t, barPath, bazPath, fee3000, common.TickMathGetSqrtRatioAtTick(0).ToString(), users.Resolve(admin)) - CreatePool(t, barPath, bazPath, fee500, common.TickMathGetSqrtRatioAtTick(0).ToString(), users.Resolve(admin)) + CreatePool(t, barPath, fooPath, fee500, common.TickMathGetSqrtRatioAtTick(0).ToString(), admin) + CreatePool(t, bazPath, fooPath, fee3000, common.TickMathGetSqrtRatioAtTick(0).ToString(), admin) + CreatePool(t, barPath, bazPath, fee3000, common.TickMathGetSqrtRatioAtTick(0).ToString(), admin) + CreatePool(t, barPath, bazPath, fee500, common.TickMathGetSqrtRatioAtTick(0).ToString(), admin) } func CreateSecondPoolWithoutFee(t *testing.T) { @@ -384,7 +382,7 @@ func CreateSecondPoolWithoutFee(t *testing.T) { quxPath, fee3000, common.TickMathGetSqrtRatioAtTick(0).ToString(), - users.Resolve(admin), + admin, ) } @@ -409,8 +407,8 @@ func MakeMintPositionWithoutFee(t *testing.T) (uint64, string, string, string) { "0", "0", max_timeout, - users.Resolve(admin), - users.Resolve(admin), + admin, + admin, ) } @@ -433,8 +431,8 @@ func MakeSecondMintPositionWithoutFee(t *testing.T) (uint64, string, string, str "0", "0", max_timeout, - users.Resolve(admin), - users.Resolve(admin), + admin, + admin, ) } @@ -457,8 +455,8 @@ func MakeThirdMintPositionWithoutFee(t *testing.T) (uint64, string, string, stri "0", "0", max_timeout, - users.Resolve(admin), - users.Resolve(admin), + admin, + admin, ) } @@ -483,7 +481,7 @@ func MakeForthMintPositionWithoutFee(t *testing.T) (uint64, string, string, stri "0", "0", max_timeout, - users.Resolve(admin), - users.Resolve(admin), + admin, + admin, ) } diff --git a/contract/r/gnoswap/router/base.gno b/contract/r/gnoswap/router/base.gno index 31c764ba8..9b05b29b8 100644 --- a/contract/r/gnoswap/router/base.gno +++ b/contract/r/gnoswap/router/base.gno @@ -12,6 +12,7 @@ import ( i256 "gno.land/p/gnoswap/int256" u256 "gno.land/p/gnoswap/uint256" + "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" ) @@ -72,7 +73,7 @@ func (op *baseSwapOperation) handleNativeTokenWrapping( } // save current user's WGNOT amount - op.userBeforeWugnotBalance = wugnot.BalanceOf(a2u(std.PrevRealm().Addr())) + op.userBeforeWugnotBalance = wugnot.BalanceOf(common.AddrToUser(std.PrevRealm().Addr())) if swapType == ExactIn && inputToken == consts.GNOT { sent := std.GetOrigSend() diff --git a/contract/r/gnoswap/router/exact_in_test.gno b/contract/r/gnoswap/router/exact_in_test.gno index a180aa1e8..ef66897cd 100644 --- a/contract/r/gnoswap/router/exact_in_test.gno +++ b/contract/r/gnoswap/router/exact_in_test.gno @@ -114,9 +114,9 @@ func TestExactInSwapRoute(t *testing.T) { { name: "BAR -> BAZ", setup: func() { - bar.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - baz.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - TokenFaucet(t, barPath, a2u(user1Addr)) + bar.Approve(consts.ROUTER_ADDR, maxApprove) + baz.Approve(consts.ROUTER_ADDR, maxApprove) + TokenFaucet(t, barPath, user1Addr) }, inputToken: barPath, outputToken: bazPath, @@ -131,10 +131,10 @@ func TestExactInSwapRoute(t *testing.T) { for _, tt := range tests { t.Run(tt.name, func(t *testing.T) { std.TestSetRealm(user1Realm) - bar.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - baz.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - bar.Approve(a2u(consts.POOL_ADDR), maxApprove) - baz.Approve(a2u(consts.POOL_ADDR), maxApprove) + bar.Approve(consts.ROUTER_ADDR, maxApprove) + baz.Approve(consts.ROUTER_ADDR, maxApprove) + bar.Approve(consts.POOL_ADDR, maxApprove) + baz.Approve(consts.POOL_ADDR, maxApprove) if tt.setup != nil { tt.setup() } diff --git a/contract/r/gnoswap/router/router.gno b/contract/r/gnoswap/router/router.gno index 4fa126cc3..3214becf0 100644 --- a/contract/r/gnoswap/router/router.gno +++ b/contract/r/gnoswap/router/router.gno @@ -9,7 +9,9 @@ import ( u256 "gno.land/p/gnoswap/uint256" "gno.land/r/demo/wugnot" + "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" + en "gno.land/r/gnoswap/v1/emission" ) @@ -93,7 +95,7 @@ func finalizeSwap( afterFee := handleSwapFee(outputToken, resultAmountOut) - userNewWugnotBalance := wugnot.BalanceOf(a2u(std.PrevRealm().Addr())) + userNewWugnotBalance := wugnot.BalanceOf(common.AddrToUser(std.PrevRealm().Addr())) if inputToken == consts.GNOT { totalBefore := userBeforeWugnotBalance + userWrappedWugnot spend := totalBefore - userNewWugnotBalance diff --git a/contract/r/gnoswap/router/swap_inner_test.gno b/contract/r/gnoswap/router/swap_inner_test.gno index f88930e30..0f4ef281f 100644 --- a/contract/r/gnoswap/router/swap_inner_test.gno +++ b/contract/r/gnoswap/router/swap_inner_test.gno @@ -7,14 +7,13 @@ import ( i256 "gno.land/p/gnoswap/int256" u256 "gno.land/p/gnoswap/uint256" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" "gno.land/r/onbloc/bar" "gno.land/r/onbloc/baz" - "gno.land/p/demo/uassert" + "gno.land/p/demo/uassert" ) func TestCalculateSqrtPriceLimitForSwap(t *testing.T) { @@ -87,13 +86,13 @@ func TestSwapInner(t *testing.T) { MakeMintPositionWithoutFee(t) std.TestSetRealm(user1Realm) - bar.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - baz.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - TokenFaucet(t, barPath, a2u(user1Addr)) - TokenFaucet(t, bazPath, a2u(user1Addr)) + bar.Approve(consts.ROUTER_ADDR, maxApprove) + baz.Approve(consts.ROUTER_ADDR, maxApprove) + TokenFaucet(t, barPath, user1Addr) + TokenFaucet(t, bazPath, user1Addr) }, amountSpecified: i256.MustFromDecimal("100"), - recipient: users.Resolve(alice), + recipient: alice, sqrtPriceLimitX96: u256.NewUint(4295128740), data: SwapCallbackData{ tokenIn: barPath, @@ -109,11 +108,11 @@ func TestSwapInner(t *testing.T) { for _, tt := range tests { std.TestSetRealm(user1Realm) - bar.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - baz.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - bar.Approve(a2u(consts.POOL_ADDR), maxApprove) - baz.Approve(a2u(consts.POOL_ADDR), maxApprove) - TokenFaucet(t, barPath, a2u(consts.ROUTER_ADDR)) + bar.Approve(consts.ROUTER_ADDR, maxApprove) + baz.Approve(consts.ROUTER_ADDR, maxApprove) + bar.Approve(consts.POOL_ADDR, maxApprove) + baz.Approve(consts.POOL_ADDR, maxApprove) + TokenFaucet(t, barPath, consts.ROUTER_ADDR) if tt.setupFn != nil { tt.setupFn(t) diff --git a/contract/r/gnoswap/router/swap_multi_test.gno b/contract/r/gnoswap/router/swap_multi_test.gno index 812d3f26c..382c7f1d0 100644 --- a/contract/r/gnoswap/router/swap_multi_test.gno +++ b/contract/r/gnoswap/router/swap_multi_test.gno @@ -6,7 +6,6 @@ import ( i256 "gno.land/p/gnoswap/int256" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/consts" "gno.land/r/onbloc/bar" @@ -37,15 +36,15 @@ func TestMultiSwap(t *testing.T) { MakeMintPositionWithoutFee(t) std.TestSetRealm(user1Realm) - bar.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - baz.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - TokenFaucet(t, barPath, a2u(user1Addr)) + bar.Approve(consts.ROUTER_ADDR, maxApprove) + baz.Approve(consts.ROUTER_ADDR, maxApprove) + TokenFaucet(t, barPath, user1Addr) }, params: SwapParams{ tokenIn: barPath, tokenOut: bazPath, fee: 3000, - recipient: users.Resolve(alice), + recipient: alice, amountSpecified: i256.MustFromDecimal("100"), }, currentPoolIndex: 0, @@ -67,16 +66,16 @@ func TestMultiSwap(t *testing.T) { MakeSecondMintPositionWithoutFee(t) std.TestSetRealm(user1Realm) - bar.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - baz.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - qux.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - TokenFaucet(t, barPath, a2u(user1Addr)) + bar.Approve(consts.ROUTER_ADDR, maxApprove) + baz.Approve(consts.ROUTER_ADDR, maxApprove) + qux.Approve(consts.ROUTER_ADDR, maxApprove) + TokenFaucet(t, barPath, user1Addr) }, params: SwapParams{ tokenIn: barPath, tokenOut: bazPath, fee: 3000, - recipient: users.Resolve(alice), + recipient: alice, amountSpecified: i256.MustFromDecimal("100"), }, currentPoolIndex: 0, @@ -96,16 +95,16 @@ func TestMultiSwap(t *testing.T) { MakeSecondMintPositionWithoutFee(t) std.TestSetRealm(user1Realm) - bar.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - baz.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - qux.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - TokenFaucet(t, barPath, a2u(user1Addr)) + bar.Approve(consts.ROUTER_ADDR, maxApprove) + baz.Approve(consts.ROUTER_ADDR, maxApprove) + qux.Approve(consts.ROUTER_ADDR, maxApprove) + TokenFaucet(t, barPath, user1Addr) }, params: SwapParams{ tokenIn: barPath, tokenOut: bazPath, fee: 3000, - recipient: users.Resolve(alice), + recipient: alice, amountSpecified: i256.MustFromDecimal("-96"), }, currentPoolIndex: 0, diff --git a/contract/r/gnoswap/router/swap_single_test.gno b/contract/r/gnoswap/router/swap_single_test.gno index 8a0edd051..de4a9ea4e 100644 --- a/contract/r/gnoswap/router/swap_single_test.gno +++ b/contract/r/gnoswap/router/swap_single_test.gno @@ -32,9 +32,9 @@ func TestSingleSwap(t *testing.T) { MakeMintPositionWithoutFee(t) std.TestSetRealm(user1Realm) - bar.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - baz.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - TokenFaucet(t, barPath, a2u(user1Addr)) + bar.Approve(consts.ROUTER_ADDR, maxApprove) + baz.Approve(consts.ROUTER_ADDR, maxApprove) + TokenFaucet(t, barPath, user1Addr) }, params: SingleSwapParams{ tokenIn: barPath, @@ -53,9 +53,9 @@ func TestSingleSwap(t *testing.T) { MakeMintPositionWithoutFee(t) std.TestSetRealm(user1Realm) - bar.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - baz.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - TokenFaucet(t, barPath, a2u(user1Addr)) + bar.Approve(consts.ROUTER_ADDR, maxApprove) + baz.Approve(consts.ROUTER_ADDR, maxApprove) + TokenFaucet(t, barPath, user1Addr) }, params: SingleSwapParams{ tokenIn: barPath, diff --git a/contract/r/gnoswap/router/utils.gno b/contract/r/gnoswap/router/utils.gno index 972cc7ec7..45782bcb8 100644 --- a/contract/r/gnoswap/router/utils.gno +++ b/contract/r/gnoswap/router/utils.gno @@ -8,7 +8,6 @@ import ( "time" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/common" i256 "gno.land/p/gnoswap/int256" @@ -94,18 +93,6 @@ func removeStringFromStringArr(arr []string, str string) []string { return arr } -// a2u converts std.Address to pusers.AddressOrName. -// pusers is a package that contains the user-related functions. -// -// Input: -// - addr: the address to convert -// -// Output: -// - pusers.AddressOrName: the converted address -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} - // min returns the smaller of two integers. func min(a, b int) int { if a < b { diff --git a/contract/r/gnoswap/router/wrap_unwrap.gno b/contract/r/gnoswap/router/wrap_unwrap.gno index fff3c00cf..83c890d18 100644 --- a/contract/r/gnoswap/router/wrap_unwrap.gno +++ b/contract/r/gnoswap/router/wrap_unwrap.gno @@ -6,6 +6,7 @@ import ( "gno.land/r/demo/wugnot" "gno.land/p/demo/ufmt" + "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" ) @@ -31,7 +32,7 @@ func wrap(ugnotAmount uint64) { wugnot.Deposit() // ROUTER HAS WUGNOT // SEND WUGNOT: ROUTER -> USER - wugnot.Transfer(a2u(std.PrevRealm().Addr()), ugnotAmount) + wugnot.Transfer(common.AddrToUser(std.PrevRealm().Addr()), ugnotAmount) } func unwrap(wugnotAmount uint64) { @@ -40,7 +41,7 @@ func unwrap(wugnotAmount uint64) { } // SEND WUGNOT: USER -> ROUTER - wugnot.TransferFrom(a2u(std.PrevRealm().Addr()), a2u(consts.ROUTER_ADDR), wugnotAmount) + wugnot.TransferFrom(common.AddrToUser(std.PrevRealm().Addr()), common.AddrToUser(consts.ROUTER_ADDR), wugnotAmount) // UNWRAP IT wugnot.Withdraw(wugnotAmount) diff --git a/contract/r/gnoswap/staker/_helper_test.gno b/contract/r/gnoswap/staker/_helper_test.gno index 14c5a0e87..cd502a06d 100644 --- a/contract/r/gnoswap/staker/_helper_test.gno +++ b/contract/r/gnoswap/staker/_helper_test.gno @@ -8,9 +8,7 @@ import ( "gno.land/p/demo/json" "gno.land/p/demo/testutils" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" en "gno.land/r/gnoswap/v1/emission" @@ -29,7 +27,7 @@ import ( const ( ugnotDenom string = "ugnot" - ugnotPath string = "gno.land/r/gnoswap/v1/pool:ugnot" + ugnotPath string = "ugnot" wugnotPath string = "gno.land/r/demo/wugnot" gnsPath string = "gno.land/r/gnoswap/v1/gns" barPath string = "gno.land/r/onbloc/bar" @@ -53,11 +51,11 @@ const ( var ( adminAddr = consts.ADMIN - admin = pusers.AddressOrName(consts.ADMIN) - alice = pusers.AddressOrName(testutils.TestAddress("alice")) - pool = pusers.AddressOrName(consts.POOL_ADDR) - protocolFee = pusers.AddressOrName(consts.PROTOCOL_FEE_ADDR) - adminRealm = std.NewUserRealm(users.Resolve(admin)) + admin = consts.ADMIN + alice = testutils.TestAddress("alice") + pool = consts.POOL_ADDR + protocolFee = consts.PROTOCOL_FEE_ADDR + adminRealm = std.NewUserRealm(admin) posRealm = std.NewCodeRealm(consts.POSITION_PATH) rouRealm = std.NewCodeRealm(consts.ROUTER_PATH) @@ -81,31 +79,31 @@ func CreatePool(t *testing.T, } } -func LPTokenStake(t *testing.T, owner pusers.AddressOrName, tokenId uint64) { +func LPTokenStake(t *testing.T, owner std.Address, tokenId uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) } -func LPTokenUnStake(t *testing.T, owner pusers.AddressOrName, tokenId uint64, unwrap bool) { +func LPTokenUnStake(t *testing.T, owner std.Address, tokenId uint64, unwrap bool) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) } func InitialisePoolTest(t *testing.T) { t.Helper() - ugnotFaucet(t, users.Resolve(admin), 100_000_000_000_000) - ugnotDeposit(t, users.Resolve(admin), 100_000_000_000_000) + ugnotFaucet(t, admin, 100_000_000_000_000) + ugnotDeposit(t, admin, 100_000_000_000_000) TokenFaucet(t, gnsPath, admin) - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) TokenApprove(t, gnsPath, admin, pool, maxApprove) poolPath := pl.GetPoolPath(wugnotPath, gnsPath, fee3000) if !pl.DoesPoolPathExist(poolPath) { pl.CreatePool(wugnotPath, gnsPath, fee3000, "79228162514264337593543950336") } - std.TestSetOrigCaller(users.Resolve(alice)) + std.TestSetOrigCaller(alice) TokenFaucet(t, wugnotPath, alice) TokenFaucet(t, gnsPath, alice) TokenApprove(t, wugnotPath, alice, pool, uint64(1000)) @@ -121,8 +119,8 @@ func InitialisePoolTest(t *testing.T) { "0", "0", max_timeout, - users.Resolve(alice), - users.Resolve(alice), + alice, + alice, ) } @@ -135,7 +133,7 @@ func CreateSecondPoolWithoutFee(t *testing.T) { bazPath, fee3000, common.TickMathGetSqrtRatioAtTick(0).ToString(), - users.Resolve(admin), + admin, ) } @@ -160,14 +158,14 @@ func MakeMintPositionWithoutFee(t *testing.T) (uint64, string, string, string) { "0", "0", max_timeout, - users.Resolve(admin), - users.Resolve(admin), + admin, + admin, ) } -func TokenFaucet(t *testing.T, tokenPath string, to pusers.AddressOrName) { +func TokenFaucet(t *testing.T, tokenPath string, to std.Address) { t.Helper() - std.TestSetOrigCaller(users.Resolve(admin)) + std.TestSetOrigCaller(admin) defaultAmount := uint64(5_000_000_000) switch tokenPath { @@ -190,11 +188,11 @@ func TokenFaucet(t *testing.T, tokenPath string, to pusers.AddressOrName) { } } -func TokenBalance(t *testing.T, tokenPath string, owner pusers.AddressOrName) uint64 { +func TokenBalance(t *testing.T, tokenPath string, owner std.Address) uint64 { t.Helper() switch tokenPath { case wugnotPath: - return wugnot.BalanceOf(owner) + return wugnot.BalanceOf(common.AddrToUser(owner)) case gnsPath: return gns.BalanceOf(owner) case barPath: @@ -212,11 +210,11 @@ func TokenBalance(t *testing.T, tokenPath string, owner pusers.AddressOrName) ui } } -func TokenAllowance(t *testing.T, tokenPath string, owner, spender pusers.AddressOrName) uint64 { +func TokenAllowance(t *testing.T, tokenPath string, owner, spender std.Address) uint64 { t.Helper() switch tokenPath { case wugnotPath: - return wugnot.Allowance(owner, spender) + return wugnot.Allowance(common.AddrToUser(owner), common.AddrToUser(spender)) case gnsPath: return gns.Allowance(owner, spender) case barPath: @@ -234,7 +232,7 @@ func TokenAllowance(t *testing.T, tokenPath string, owner, spender pusers.Addres } } -func TokenApprove(t *testing.T, tokenPath string, owner, spender pusers.AddressOrName, amount uint64) { +func TokenApprove(t *testing.T, tokenPath string, owner, spender std.Address, amount uint64) { t.Helper() switch tokenPath { case wugnotPath: @@ -288,87 +286,87 @@ func MintPosition(t *testing.T, caller) } -func wugnotApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func wugnotApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) - wugnot.Approve(spender, amount) + std.TestSetRealm(std.NewUserRealm(owner)) + wugnot.Approve(common.AddrToUser(spender), amount) } -func gnsApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func gnsApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) gns.Approve(spender, amount) } -func barApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func barApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) bar.Approve(spender, amount) } -func bazApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func bazApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) baz.Approve(spender, amount) } -func fooApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func fooApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) foo.Approve(spender, amount) } -func oblApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func oblApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) obl.Approve(spender, amount) } -func quxApprove(t *testing.T, owner, spender pusers.AddressOrName, amount uint64) { +func quxApprove(t *testing.T, owner, spender std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(owner))) + std.TestSetRealm(std.NewUserRealm(owner)) qux.Approve(spender, amount) } -func wugnotTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func wugnotTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) - wugnot.Transfer(to, amount) + std.TestSetRealm(std.NewUserRealm(admin)) + wugnot.Transfer(common.AddrToUser(to), amount) } -func gnsTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func gnsTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) gns.Transfer(to, amount) } -func barTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func barTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) bar.Transfer(to, amount) } -func bazTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func bazTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) baz.Transfer(to, amount) } -func fooTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func fooTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) foo.Transfer(to, amount) } -func oblTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func oblTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) obl.Transfer(to, amount) } -func quxTransfer(t *testing.T, to pusers.AddressOrName, amount uint64) { +func quxTransfer(t *testing.T, to std.Address, amount uint64) { t.Helper() - std.TestSetRealm(std.NewUserRealm(users.Resolve(admin))) + std.TestSetRealm(std.NewUserRealm(admin)) qux.Transfer(to, amount) } @@ -411,7 +409,7 @@ func ugnotBurn(t *testing.T, addr std.Address, denom string, amount int64) { func ugnotFaucet(t *testing.T, to std.Address, amount uint64) { t.Helper() - faucetAddress := users.Resolve(admin) + faucetAddress := admin std.TestSetOrigCaller(faucetAddress) if ugnotBalanceOf(t, faucetAddress) < amount { @@ -495,12 +493,12 @@ func gnsBalanceCheck(t *testing.T, beforeBalance gnsBalanceTracker, printChange caller := std.PrevRealm().Addr() height := std.GetHeight() - stakerBalance := gns.BalanceOf(a2u(consts.STAKER_ADDR)) - devOpsBalance := gns.BalanceOf(a2u(consts.DEV_OPS)) - communityPoolBalance := gns.BalanceOf(a2u(consts.COMMUNITY_POOL_ADDR)) - govStakerBalance := gns.BalanceOf(a2u(consts.GOV_STAKER_ADDR)) - protocolFeeBalance := gns.BalanceOf(a2u(consts.PROTOCOL_FEE_ADDR)) - callerBalance := gns.BalanceOf(a2u(caller)) + stakerBalance := gns.BalanceOf(consts.STAKER_ADDR) + devOpsBalance := gns.BalanceOf(consts.DEV_OPS) + communityPoolBalance := gns.BalanceOf(consts.COMMUNITY_POOL_ADDR) + govStakerBalance := gns.BalanceOf(consts.GOV_STAKER_ADDR) + protocolFeeBalance := gns.BalanceOf(consts.PROTOCOL_FEE_ADDR) + callerBalance := gns.BalanceOf(caller) return gnsBalanceTracker{ height: height, @@ -526,12 +524,12 @@ func getPrintInfo(t *testing.T) string { emissionDebug := ApiEmissionDebugInfo{} emissionDebug.Height = std.GetHeight() emissionDebug.Time = time.Now().Unix() - emissionDebug.GnsStaker = gns.BalanceOf(a2u(consts.STAKER_ADDR)) - emissionDebug.GnsDevOps = gns.BalanceOf(a2u(consts.DEV_OPS)) - emissionDebug.GnsCommunityPool = gns.BalanceOf(a2u(consts.COMMUNITY_POOL_ADDR)) - emissionDebug.GnsGovStaker = gns.BalanceOf(a2u(consts.GOV_STAKER_ADDR)) - emissionDebug.GnsProtocolFee = gns.BalanceOf(a2u(consts.PROTOCOL_FEE_ADDR)) - emissionDebug.GnsADMIN = gns.BalanceOf(a2u(consts.ADMIN)) + emissionDebug.GnsStaker = gns.BalanceOf(consts.STAKER_ADDR) + emissionDebug.GnsDevOps = gns.BalanceOf(consts.DEV_OPS) + emissionDebug.GnsCommunityPool = gns.BalanceOf(consts.COMMUNITY_POOL_ADDR) + emissionDebug.GnsGovStaker = gns.BalanceOf(consts.GOV_STAKER_ADDR) + emissionDebug.GnsProtocolFee = gns.BalanceOf(consts.PROTOCOL_FEE_ADDR) + emissionDebug.GnsADMIN = gns.BalanceOf(consts.ADMIN) poolTiers := make(map[string]uint64) pools.tree.Iterate("", "", func(poolPath string, iPool interface{}) bool { diff --git a/contract/r/gnoswap/staker/filetests/average_block_time_change_from_gns_filetest.gno b/contract/r/gnoswap/staker/filetests/average_block_time_change_from_gns_filetest.gno index ffc36a67e..5a8617fa0 100644 --- a/contract/r/gnoswap/staker/filetests/average_block_time_change_from_gns_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/average_block_time_change_from_gns_filetest.gno @@ -34,16 +34,16 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) // g1v4u8getjdeskcsmjv4shgmmjta047h6lua7mup externalCreatorAddr = testutils.TestAddress("externalCreator") - externalCreatorUser = common.AddrToUser(externalCreatorAddr) + externalCreatorUser = externalCreatorAddr externalCreatorRealm = std.NewUserRealm(externalCreatorAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) wugnotAddr = consts.WUGNOT_ADDR @@ -113,8 +113,8 @@ func testCreatePool() { func testMintWugnotGnsPos01() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( diff --git a/contract/r/gnoswap/staker/filetests/no_position_to_give_reward_filetest.gno b/contract/r/gnoswap/staker/filetests/no_position_to_give_reward_filetest.gno index d616ab3ac..014d1cb14 100644 --- a/contract/r/gnoswap/staker/filetests/no_position_to_give_reward_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/no_position_to_give_reward_filetest.gno @@ -34,16 +34,16 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) // g1v4u8getjdeskcsmjv4shgmmjta047h6lua7mup externalCreatorAddr = testutils.TestAddress("externalCreator") - externalCreatorUser = common.AddrToUser(externalCreatorAddr) + externalCreatorUser = externalCreatorAddr externalCreatorRealm = std.NewUserRealm(externalCreatorAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) wugnotAddr = consts.WUGNOT_ADDR @@ -111,8 +111,8 @@ func testCreatePool() { func testMintWugnotGnsPos01() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -142,12 +142,12 @@ func testStakeTokenPos01() { func testUnstakePos01() { std.TestSetRealm(adminRealm) - oldCommunityGns := gns.BalanceOf(common.AddrToUser(consts.COMMUNITY_POOL_ADDR)) + oldCommunityGns := gns.BalanceOf(consts.COMMUNITY_POOL_ADDR) // this position-01 has been staked and staked same time sr.UnstakeToken(1, false) - afterCommunityGns := gns.BalanceOf(common.AddrToUser(consts.COMMUNITY_POOL_ADDR)) + afterCommunityGns := gns.BalanceOf(consts.COMMUNITY_POOL_ADDR) // therefore community pool should receive no-position-staked pool's reward increased := afterCommunityGns - oldCommunityGns diff --git a/contract/r/gnoswap/staker/filetests/pool_add_to_tier2_and_change_to_tier3_internal_filetest.gno b/contract/r/gnoswap/staker/filetests/pool_add_to_tier2_and_change_to_tier3_internal_filetest.gno index 01cbcc413..7ae7ab87a 100644 --- a/contract/r/gnoswap/staker/filetests/pool_add_to_tier2_and_change_to_tier3_internal_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/pool_add_to_tier2_and_change_to_tier3_internal_filetest.gno @@ -37,11 +37,11 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) wugnotAddr = consts.WUGNOT_ADDR @@ -119,8 +119,8 @@ func testCreatePool() { func testMintAndStakeWugnotGnsPos01() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -165,8 +165,8 @@ func testSetPoolTier2() { func testMintAndStakeBarBazPos02() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - baz.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + baz.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( diff --git a/contract/r/gnoswap/staker/filetests/pool_add_to_tier2_and_removed_internal_filetest.gno b/contract/r/gnoswap/staker/filetests/pool_add_to_tier2_and_removed_internal_filetest.gno index 2633f8151..3663f0ef6 100644 --- a/contract/r/gnoswap/staker/filetests/pool_add_to_tier2_and_removed_internal_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/pool_add_to_tier2_and_removed_internal_filetest.gno @@ -37,11 +37,11 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) wugnotAddr = consts.WUGNOT_ADDR @@ -119,8 +119,8 @@ func testCreatePool() { func testMintAndStakeWugnotGnsPos01() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -162,8 +162,8 @@ func testSetPoolTier2() { func testMintAndStakeBarBazPos02() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - baz.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + baz.Approve(consts.POOL_ADDR, consts.UINT64_MAX) pn.Mint( barPath, diff --git a/contract/r/gnoswap/staker/filetests/position_inrange_change_by_swap_external_filetest.gno b/contract/r/gnoswap/staker/filetests/position_inrange_change_by_swap_external_filetest.gno index b61f0d5f9..865643088 100644 --- a/contract/r/gnoswap/staker/filetests/position_inrange_change_by_swap_external_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/position_inrange_change_by_swap_external_filetest.gno @@ -37,11 +37,11 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) fooPath = "gno.land/r/onbloc/foo" @@ -108,8 +108,8 @@ func testCreatePool() { func testMintBarQuxPos01() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + qux.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -131,8 +131,8 @@ func testMintBarQuxPos01() { func testMintBarQuxPos02() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + qux.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -154,8 +154,8 @@ func testMintBarQuxPos02() { func testCreateExternalIncentive() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.STAKER_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.STAKER_ADDR), depositGnsAmount) + bar.Approve(consts.STAKER_ADDR, consts.UINT64_MAX) + gns.Approve(consts.STAKER_ADDR, depositGnsAmount) std.TestSkipHeights(1) sr.CreateExternalIncentive( @@ -209,11 +209,11 @@ func testMakePosition1OutRangeBySwap() { poolTick := pl.PoolGetSlot0Tick(poolPath) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + qux.Approve(consts.POOL_ADDR, consts.UINT64_MAX) - bar.Approve(common.AddrToUser(consts.ROUTER_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.ROUTER_ADDR), consts.UINT64_MAX) + bar.Approve(consts.ROUTER_ADDR, consts.UINT64_MAX) + qux.Approve(consts.ROUTER_ADDR, consts.UINT64_MAX) tokenIn, tokenOut := rr.ExactInSwapRoute( barPath, // inputToken @@ -250,11 +250,11 @@ func testMakePosition1InRangeBySwap() { poolTick := pl.PoolGetSlot0Tick(poolPath) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + qux.Approve(consts.POOL_ADDR, consts.UINT64_MAX) - bar.Approve(common.AddrToUser(consts.ROUTER_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.ROUTER_ADDR), consts.UINT64_MAX) + bar.Approve(consts.ROUTER_ADDR, consts.UINT64_MAX) + qux.Approve(consts.ROUTER_ADDR, consts.UINT64_MAX) tokenIn, tokenOut := rr.ExactInSwapRoute( quxPath, diff --git a/contract/r/gnoswap/staker/filetests/position_inrange_change_by_swap_internal_filetest.gno b/contract/r/gnoswap/staker/filetests/position_inrange_change_by_swap_internal_filetest.gno index a3f293498..d873b59ce 100644 --- a/contract/r/gnoswap/staker/filetests/position_inrange_change_by_swap_internal_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/position_inrange_change_by_swap_internal_filetest.gno @@ -34,11 +34,11 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) wugnotAddr = consts.WUGNOT_ADDR @@ -114,8 +114,8 @@ func testCreatePool() { func testMintWugnotGnsPos01() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -137,8 +137,8 @@ func testMintWugnotGnsPos01() { func testMintWugnotGnsPos02() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -187,11 +187,11 @@ func testMakePosition1OutRangeBySwap() { poolTick := pl.PoolGetSlot0Tick(poolPath) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) - wugnot.Approve(common.AddrToUser(consts.ROUTER_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.ROUTER_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.ROUTER_ADDR, consts.UINT64_MAX) + gns.Approve(consts.ROUTER_ADDR, consts.UINT64_MAX) tokenIn, tokenOut := rr.ExactInSwapRoute( wugnotPath, // inputToken @@ -228,11 +228,11 @@ func testMakePosition1InRangeBySwap() { poolTick := pl.PoolGetSlot0Tick(poolPath) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) - wugnot.Approve(common.AddrToUser(consts.ROUTER_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.ROUTER_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.ROUTER_ADDR, consts.UINT64_MAX) + gns.Approve(consts.ROUTER_ADDR, consts.UINT64_MAX) tokenIn, tokenOut := rr.ExactInSwapRoute( gnsPath, diff --git a/contract/r/gnoswap/staker/filetests/reward_for_user_collect_change_by_collecting_reward_external_filetest.gno b/contract/r/gnoswap/staker/filetests/reward_for_user_collect_change_by_collecting_reward_external_filetest.gno index 07a9d3ad5..f33996fa4 100644 --- a/contract/r/gnoswap/staker/filetests/reward_for_user_collect_change_by_collecting_reward_external_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/reward_for_user_collect_change_by_collecting_reward_external_filetest.gno @@ -39,11 +39,11 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) wugnotAddr = consts.WUGNOT_ADDR @@ -115,8 +115,8 @@ func testCreatePool() { func testCreateExternalIncentiveBar() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.STAKER_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.STAKER_ADDR), depositGnsAmount) + bar.Approve(consts.STAKER_ADDR, consts.UINT64_MAX) + gns.Approve(consts.STAKER_ADDR, depositGnsAmount) std.TestSkipHeights(1) sr.CreateExternalIncentive( @@ -131,8 +131,8 @@ func testCreateExternalIncentiveBar() { func testCreateExternalIncentiveQux() { std.TestSetRealm(adminRealm) - qux.Approve(common.AddrToUser(consts.STAKER_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.STAKER_ADDR), depositGnsAmount) + qux.Approve(consts.STAKER_ADDR, consts.UINT64_MAX) + gns.Approve(consts.STAKER_ADDR, depositGnsAmount) std.TestSkipHeights(1) sr.CreateExternalIncentive( @@ -147,8 +147,8 @@ func testCreateExternalIncentiveQux() { func testMintAndStakeBarQuxPos01() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + qux.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -173,8 +173,8 @@ func testMintAndStakeBarQuxPos01() { func testMintAndStakeBarQuxPos02() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + qux.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( diff --git a/contract/r/gnoswap/staker/filetests/reward_for_user_collect_change_by_collecting_reward_internal_filetest.gno b/contract/r/gnoswap/staker/filetests/reward_for_user_collect_change_by_collecting_reward_internal_filetest.gno index d15f3e051..f077b77da 100644 --- a/contract/r/gnoswap/staker/filetests/reward_for_user_collect_change_by_collecting_reward_internal_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/reward_for_user_collect_change_by_collecting_reward_internal_filetest.gno @@ -34,11 +34,11 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) wugnotAddr = consts.WUGNOT_ADDR @@ -111,8 +111,8 @@ func testCreatePool() { func testMintAndStakeWugnotGnsPos01() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -137,8 +137,8 @@ func testMintAndStakeWugnotGnsPos01() { func testMintAndStakeWugnotGnsPos02() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( diff --git a/contract/r/gnoswap/staker/filetests/single_gns_external_ends_filetest.gno b/contract/r/gnoswap/staker/filetests/single_gns_external_ends_filetest.gno index cce5cf729..50d4b82e8 100644 --- a/contract/r/gnoswap/staker/filetests/single_gns_external_ends_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/single_gns_external_ends_filetest.gno @@ -35,16 +35,16 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) // g1v4u8getjdeskcsmjv4shgmmjta047h6lua7mup externalCreatorAddr = testutils.TestAddress("externalCreator") - externalCreatorUser = common.AddrToUser(externalCreatorAddr) + externalCreatorUser = externalCreatorAddr externalCreatorRealm = std.NewUserRealm(externalCreatorAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) fooPath = "gno.land/r/onbloc/foo" @@ -112,8 +112,8 @@ func testCreatePool() { func testMintBarQuxPos01() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + qux.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -135,8 +135,8 @@ func testMintBarQuxPos01() { func testMintBarQuxPos02() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + qux.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -161,7 +161,7 @@ func testCreateExternalIncentiveGns() { gns.Transfer(externalCreatorUser, depositGnsAmount) std.TestSetRealm(externalCreatorRealm) // creator - gns.Approve(common.AddrToUser(consts.STAKER_ADDR), consts.UINT64_MAX) + gns.Approve(consts.STAKER_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) sr.CreateExternalIncentive( diff --git a/contract/r/gnoswap/staker/filetests/single_position_stake_unstake_restake_filetest.gno b/contract/r/gnoswap/staker/filetests/single_position_stake_unstake_restake_filetest.gno index 61c234cc8..f5bfe6f15 100644 --- a/contract/r/gnoswap/staker/filetests/single_position_stake_unstake_restake_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/single_position_stake_unstake_restake_filetest.gno @@ -33,16 +33,16 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) // g1v4u8getjdeskcsmjv4shgmmjta047h6lua7mup externalCreatorAddr = testutils.TestAddress("externalCreator") - externalCreatorUser = common.AddrToUser(externalCreatorAddr) + externalCreatorUser = externalCreatorAddr externalCreatorRealm = std.NewUserRealm(externalCreatorAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) wugnotAddr = consts.WUGNOT_ADDR @@ -114,8 +114,8 @@ func testCreatePool() { func testMintWugnotGnsPos01() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -137,8 +137,8 @@ func testMintWugnotGnsPos01() { func testMintWugnotGnsPos02() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( diff --git a/contract/r/gnoswap/staker/filetests/single_position_stake_unstake_same_block_filetest.gno b/contract/r/gnoswap/staker/filetests/single_position_stake_unstake_same_block_filetest.gno index 764a08002..305b4216d 100644 --- a/contract/r/gnoswap/staker/filetests/single_position_stake_unstake_same_block_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/single_position_stake_unstake_same_block_filetest.gno @@ -33,16 +33,16 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) // g1v4u8getjdeskcsmjv4shgmmjta047h6lua7mup externalCreatorAddr = testutils.TestAddress("externalCreator") - externalCreatorUser = common.AddrToUser(externalCreatorAddr) + externalCreatorUser = externalCreatorAddr externalCreatorRealm = std.NewUserRealm(externalCreatorAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) wugnotAddr = consts.WUGNOT_ADDR @@ -108,8 +108,8 @@ func testCreatePool() { func testMintWugnotGnsPos01() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( diff --git a/contract/r/gnoswap/staker/filetests/staked_liquidity_change_by_staking_unstaking_external_filetest.gno b/contract/r/gnoswap/staker/filetests/staked_liquidity_change_by_staking_unstaking_external_filetest.gno index c3492613c..9155cb5fd 100644 --- a/contract/r/gnoswap/staker/filetests/staked_liquidity_change_by_staking_unstaking_external_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/staked_liquidity_change_by_staking_unstaking_external_filetest.gno @@ -36,11 +36,11 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) fooPath = "gno.land/r/onbloc/foo" @@ -108,8 +108,8 @@ func testCreatePool() { func testMintBarQuxPos01() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + qux.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -131,8 +131,8 @@ func testMintBarQuxPos01() { func testMintBarQuxPos02() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - qux.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + bar.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + qux.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -154,8 +154,8 @@ func testMintBarQuxPos02() { func testCreateExternalIncentive() { std.TestSetRealm(adminRealm) - bar.Approve(common.AddrToUser(consts.STAKER_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.STAKER_ADDR), depositGnsAmount) + bar.Approve(consts.STAKER_ADDR, consts.UINT64_MAX) + gns.Approve(consts.STAKER_ADDR, depositGnsAmount) std.TestSkipHeights(1) sr.CreateExternalIncentive( diff --git a/contract/r/gnoswap/staker/filetests/staked_liquidity_change_by_staking_unstaking_internal_filetest.gno b/contract/r/gnoswap/staker/filetests/staked_liquidity_change_by_staking_unstaking_internal_filetest.gno index 143e1ed35..eb686516b 100644 --- a/contract/r/gnoswap/staker/filetests/staked_liquidity_change_by_staking_unstaking_internal_filetest.gno +++ b/contract/r/gnoswap/staker/filetests/staked_liquidity_change_by_staking_unstaking_internal_filetest.gno @@ -33,11 +33,11 @@ import ( var ( adminAddr = consts.ADMIN - adminUser = common.AddrToUser(adminAddr) + adminUser = adminAddr adminRealm = std.NewUserRealm(adminAddr) stakerAddr = consts.STAKER_ADDR - stakerUser = common.AddrToUser(stakerAddr) + stakerUser = stakerAddr stakerRealm = std.NewCodeRealm(consts.STAKER_PATH) wugnotAddr = consts.WUGNOT_ADDR @@ -108,8 +108,8 @@ func testCreatePool() { func testMintAndStakeWugnotGnsPos01() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( @@ -134,8 +134,8 @@ func testMintAndStakeWugnotGnsPos01() { func testMintAndStakeWugnotGnsPos02() { std.TestSetRealm(adminRealm) - wugnot.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) - gns.Approve(common.AddrToUser(consts.POOL_ADDR), consts.UINT64_MAX) + wugnot.Approve(consts.POOL_ADDR, consts.UINT64_MAX) + gns.Approve(consts.POOL_ADDR, consts.UINT64_MAX) std.TestSkipHeights(1) pn.Mint( diff --git a/contract/r/gnoswap/staker/getter.gno b/contract/r/gnoswap/staker/getter.gno index 55f0484d4..3be2db214 100644 --- a/contract/r/gnoswap/staker/getter.gno +++ b/contract/r/gnoswap/staker/getter.gno @@ -706,11 +706,11 @@ func getCurrentInfo() currentInfo { return currentInfo{ height: std.GetHeight(), time: time.Now().Unix(), - gnsStaker: gns.BalanceOf(a2u(consts.STAKER_ADDR)), - gnsDevOps: gns.BalanceOf(a2u(consts.DEV_OPS)), - gnsCommunityPool: gns.BalanceOf(a2u(consts.COMMUNITY_POOL_ADDR)), - gnsGovStaker: gns.BalanceOf(a2u(consts.GOV_STAKER_ADDR)), - gnsProtocolFee: gns.BalanceOf(a2u(consts.PROTOCOL_FEE_ADDR)), - gnsADMIN: gns.BalanceOf(a2u(consts.ADMIN)), + gnsStaker: gns.BalanceOf(consts.STAKER_ADDR), + gnsDevOps: gns.BalanceOf(consts.DEV_OPS), + gnsCommunityPool: gns.BalanceOf(consts.COMMUNITY_POOL_ADDR), + gnsGovStaker: gns.BalanceOf(consts.GOV_STAKER_ADDR), + gnsProtocolFee: gns.BalanceOf(consts.PROTOCOL_FEE_ADDR), + gnsADMIN: gns.BalanceOf(consts.ADMIN), } } diff --git a/contract/r/gnoswap/staker/protocol_fee_unstaking.gno b/contract/r/gnoswap/staker/protocol_fee_unstaking.gno index 5b8b0863a..37dacfce4 100644 --- a/contract/r/gnoswap/staker/protocol_fee_unstaking.gno +++ b/contract/r/gnoswap/staker/protocol_fee_unstaking.gno @@ -50,7 +50,7 @@ func handleUnstakingFee( if internal { // staker contract has fee - gns.Transfer(a2u(consts.PROTOCOL_FEE_ADDR), feeAmount) + gns.Transfer(consts.PROTOCOL_FEE_ADDR, feeAmount) pf.AddToProtocolFee(consts.GNS_PATH, feeAmount) std.Emit( diff --git a/contract/r/gnoswap/staker/reward_calculation_pool_tier_test.gno b/contract/r/gnoswap/staker/reward_calculation_pool_tier_test.gno index 6c6a8d04f..c98806acc 100644 --- a/contract/r/gnoswap/staker/reward_calculation_pool_tier_test.gno +++ b/contract/r/gnoswap/staker/reward_calculation_pool_tier_test.gno @@ -5,13 +5,11 @@ import ( "testing" "gno.land/p/demo/testutils" - "gno.land/p/demo/uassert" "gno.land/r/gnoswap/v1/consts" pl "gno.land/r/gnoswap/v1/pool" "gno.land/r/onbloc/bar" "gno.land/r/onbloc/baz" "gno.land/r/onbloc/qux" - en "gno.land/r/gnoswap/v1/emission" ) func TestTierRatioFromCounts(t *testing.T) { @@ -22,10 +20,10 @@ func TestTierRatioFromCounts(t *testing.T) { user1Realm := std.NewUserRealm(user1Addr) std.TestSetRealm(user1Realm) - bar.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - baz.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - qux.Approve(a2u(consts.ROUTER_ADDR), maxApprove) - TokenFaucet(t, barPath, a2u(user1Addr)) + bar.Approve(consts.ROUTER_ADDR, maxApprove) + baz.Approve(consts.ROUTER_ADDR, maxApprove) + qux.Approve(consts.ROUTER_ADDR, maxApprove) + TokenFaucet(t, barPath, user1Addr) tests := []struct { tier1Count uint64 @@ -92,10 +90,11 @@ var test_gnousdc = pl.GetPoolPath("gno.land/r/demo/wugnot", "gno.land/r/gnoswap/ func SetupPoolTier(t *testing.T) *PoolTier { poolTier := NewPoolTier(NewPools(), 1, test_gnousdc, func() uint64 { return 1000 }, func(start, end int64) ([]int64, []uint64) { return nil, nil }) - + poolTier.changeTier(1, pools, test_gnousdc, 1) return poolTier } + /* func TestPoolTierSimple(t *testing.T) { poolTier := SetupPoolTier(t) @@ -130,4 +129,4 @@ func TestPoolTierSimple(t *testing.T) { uassert.Equal(t, uint64(14000), poolTier.CurrentReward(1, currentHeight)) uassert.Equal(t, uint64(6000), poolTier.CurrentReward(2, currentHeight)) } - */ \ No newline at end of file +*/ diff --git a/contract/r/gnoswap/staker/staker.gno b/contract/r/gnoswap/staker/staker.gno index f4e6ac804..96d623a7a 100644 --- a/contract/r/gnoswap/staker/staker.gno +++ b/contract/r/gnoswap/staker/staker.gno @@ -447,10 +447,10 @@ func CollectReward(tokenId uint64, unwrapResult bool) (string, string) { totalEmissionSent += toUser if toUser > 0 { - gns.Transfer(a2u(deposit.owner), toUser) + gns.Transfer(deposit.owner, toUser) // internal penalty to community pool - gns.Transfer(a2u(consts.COMMUNITY_POOL_ADDR), reward.InternalPenalty) + gns.Transfer(consts.COMMUNITY_POOL_ADDR, reward.InternalPenalty) totalEmissionSent += reward.InternalPenalty } @@ -458,7 +458,7 @@ func CollectReward(tokenId uint64, unwrapResult bool) (string, string) { totalEmissionSent += unClaimableInternal if unClaimableInternal > 0 { // internal unclaimable to community pool - gns.Transfer(a2u(consts.COMMUNITY_POOL_ADDR), unClaimableInternal) + gns.Transfer(consts.COMMUNITY_POOL_ADDR, unClaimableInternal) } prevAddr, prevPkgPath := getPrev() diff --git a/contract/r/gnoswap/staker/staker_external_incentive.gno b/contract/r/gnoswap/staker/staker_external_incentive.gno index 0345a1f45..a11b5284f 100644 --- a/contract/r/gnoswap/staker/staker_external_incentive.gno +++ b/contract/r/gnoswap/staker/staker_external_incentive.gno @@ -117,7 +117,7 @@ func CreateExternalIncentive( externalIncentives.Set(incentiveId, incentive) // deposit gns amount - gns.TransferFrom(a2u(caller), a2u(consts.STAKER_ADDR), depositGnsAmount) + gns.TransferFrom(caller, consts.STAKER_ADDR, depositGnsAmount) // transfer reward token from user to staker teller := common.GetTokenTeller(rewardToken) @@ -202,7 +202,7 @@ func EndExternalIncentive(refundee std.Address, targetPoolPath, rewardToken stri } // also refund deposit gns amount - gns.Transfer(a2u(ictv.refundee), ictv.depositGnsAmount) + gns.Transfer(ictv.refundee, ictv.depositGnsAmount) prevAddr, prevRealm := getPrev() std.Emit( @@ -275,7 +275,7 @@ func isMidnight(startTime time.Time) bool { } func gnsBalance(addr std.Address) uint64 { - return gns.BalanceOf(a2u(addr)) + return gns.BalanceOf(addr) } func isAllowedForExternalReward(poolPath, tokenPath string) error { diff --git a/contract/r/gnoswap/staker/utils.gno b/contract/r/gnoswap/staker/utils.gno index 64b9fe0f0..a759c1ef7 100644 --- a/contract/r/gnoswap/staker/utils.gno +++ b/contract/r/gnoswap/staker/utils.gno @@ -6,7 +6,6 @@ import ( "gno.land/p/demo/grc/grc721" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" @@ -81,18 +80,6 @@ func poolPathDivide(poolPath string) (string, string, string) { return pToken0, pToken1, fee } -// a2u converts std.Address to pusers.AddressOrName. -// pusers is a package that contains the user-related functions. -// -// Input: -// - addr: the address to convert -// -// Output: -// - pusers.AddressOrName: the converted address -func a2u(addr std.Address) pusers.AddressOrName { - return pusers.AddressOrName(addr) -} - // tid converts uint64 to grc721.TokenID. // // Input: diff --git a/contract/r/gnoswap/staker/utils_test.gno b/contract/r/gnoswap/staker/utils_test.gno index 54fb8f6ae..df8de6bef 100644 --- a/contract/r/gnoswap/staker/utils_test.gno +++ b/contract/r/gnoswap/staker/utils_test.gno @@ -6,9 +6,7 @@ import ( "gno.land/p/demo/grc/grc721" "gno.land/p/demo/uassert" - pusers "gno.land/p/demo/users" - "gno.land/r/demo/users" "gno.land/r/gnoswap/v1/consts" ) @@ -179,29 +177,6 @@ func TestTid(t *testing.T) { } } -func TestA2u(t *testing.T) { - addr := std.Address("g1lmvrrrr4er2us84h2732sru76c9zl2nvknha8c") - - tests := []struct { - name string - input std.Address - expected pusers.AddressOrName - }{ - { - name: "Success - a2u", - input: addr, - expected: pusers.AddressOrName(addr), - }, - } - - for _, tc := range tests { - t.Run(tc.name, func(t *testing.T) { - got := a2u(tc.input) - uassert.Equal(t, users.Resolve(got).String(), users.Resolve(tc.expected).String()) - }) - } -} - func TestGetPrevRealm(t *testing.T) { tests := []struct { name string diff --git a/contract/r/gnoswap/staker/warp_unwrap_test.gno b/contract/r/gnoswap/staker/warp_unwrap_test.gno index 35a974bf5..d8b0e25e5 100644 --- a/contract/r/gnoswap/staker/warp_unwrap_test.gno +++ b/contract/r/gnoswap/staker/warp_unwrap_test.gno @@ -6,7 +6,6 @@ import ( "testing" "gno.land/p/demo/testutils" - pusers "gno.land/p/demo/users" "gno.land/r/gnoswap/v1/consts" ) @@ -47,7 +46,7 @@ func TestWrap(t *testing.T) { wrap(1_000) }, verify: func() uint64 { - return TokenBalance(t, wugnotPath, pusers.AddressOrName(user1Addr)) + return TokenBalance(t, wugnotPath, user1Addr) }, expected: "1000", shouldPanic: false, @@ -115,11 +114,11 @@ func TestUnwrap(t *testing.T) { std.TestSetRealm(std.NewUserRealm(user2Addr)) wrap(1_000) std.TestSetRealm(std.NewUserRealm(user2Addr)) - wugnotApprove(t, pusers.AddressOrName(user2Addr), pusers.AddressOrName(consts.STAKER_ADDR), 1_000) + wugnotApprove(t, user2Addr, consts.STAKER_ADDR, 1_000) unwrap(1_000) }, verify: func() uint64 { - return TokenBalance(t, wugnotPath, pusers.AddressOrName(user2Addr)) + return TokenBalance(t, wugnotPath, user2Addr) }, expected: "0", shouldPanic: false, diff --git a/contract/r/gnoswap/staker/wrap_unwrap.gno b/contract/r/gnoswap/staker/wrap_unwrap.gno index 3ab00e53d..8dc856ed7 100644 --- a/contract/r/gnoswap/staker/wrap_unwrap.gno +++ b/contract/r/gnoswap/staker/wrap_unwrap.gno @@ -6,6 +6,7 @@ import ( "gno.land/r/demo/wugnot" "gno.land/p/demo/ufmt" + "gno.land/r/gnoswap/v1/common" "gno.land/r/gnoswap/v1/consts" ) @@ -36,8 +37,9 @@ func wrap(ugnotAmount uint64) { banker := std.GetBanker(std.BankerTypeRealmSend) banker.SendCoins(consts.STAKER_ADDR, consts.WUGNOT_ADDR, std.Coins{{Denom: "ugnot", Amount: int64(ugnotAmount)}}) wugnot.Deposit() // STAKER HAS WUGNOT + // SEND WUGNOT: STAKER -> USER - wugnot.Transfer(a2u(getPrevAddr()), ugnotAmount) + wugnot.Transfer(common.AddrToUser(std.PrevRealm().Addr()), ugnotAmount) } // unwrap converts `wugnot` tokens back into `ugnot` tokens. @@ -53,7 +55,7 @@ func unwrap(wugnotAmount uint64) { } // SEND WUGNOT: USER -> STAKER - wugnot.TransferFrom(a2u(getPrevAddr()), a2u(consts.STAKER_ADDR), wugnotAmount) + wugnot.TransferFrom(common.AddrToUser(std.PrevRealm().Addr()), common.AddrToUser(consts.STAKER_ADDR), wugnotAmount) // UNWRAP IT wugnot.Withdraw(wugnotAmount) diff --git a/contract/r/gnoswap/test_token/bar/bar.gno b/contract/r/gnoswap/test_token/bar/bar.gno index d3d998e8a..cca7288c0 100644 --- a/contract/r/gnoswap/test_token/bar/bar.gno +++ b/contract/r/gnoswap/test_token/bar/bar.gno @@ -1,15 +1,14 @@ package bar import ( + "std" "strings" "gno.land/p/demo/grc/grc20" "gno.land/p/demo/ownable" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/demo/grc20reg" - "gno.land/r/demo/users" ) var ( @@ -28,37 +27,29 @@ func TotalSupply() uint64 { return UserTeller.TotalSupply() } -func BalanceOf(owner pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - return UserTeller.BalanceOf(ownerAddr) +func BalanceOf(owner std.Address) uint64 { + return UserTeller.BalanceOf(owner) } -func Allowance(owner, spender pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - spenderAddr := users.Resolve(spender) - return UserTeller.Allowance(ownerAddr, spenderAddr) +func Allowance(owner, spender std.Address) uint64 { + return UserTeller.Allowance(owner, spender) } -func Transfer(to pusers.AddressOrName, amount uint64) { - toAddr := users.Resolve(to) - checkErr(UserTeller.Transfer(toAddr, amount)) +func Transfer(to std.Address, amount uint64) { + checkErr(UserTeller.Transfer(to, amount)) } -func Approve(spender pusers.AddressOrName, amount uint64) { - spenderAddr := users.Resolve(spender) - checkErr(UserTeller.Approve(spenderAddr, amount)) +func Approve(spender std.Address, amount uint64) { + checkErr(UserTeller.Approve(spender, amount)) } -func TransferFrom(from, to pusers.AddressOrName, amount uint64) { - fromAddr := users.Resolve(from) - toAddr := users.Resolve(to) - checkErr(UserTeller.TransferFrom(fromAddr, toAddr, amount)) +func TransferFrom(from, to std.Address, amount uint64) { + checkErr(UserTeller.TransferFrom(from, to, amount)) } -func Burn(from pusers.AddressOrName, amount uint64) { +func Burn(from std.Address, amount uint64) { owner.AssertCallerIsOwner() - fromAddr := users.Resolve(from) - checkErr(privateLedger.Burn(fromAddr, amount)) + checkErr(privateLedger.Burn(from, amount)) } func Render(path string) string { @@ -69,9 +60,8 @@ func Render(path string) string { case path == "": return Token.RenderHome() case c == 2 && parts[0] == "balance": - owner := pusers.AddressOrName(parts[1]) - ownerAddr := users.Resolve(owner) - balance := UserTeller.BalanceOf(ownerAddr) + owner := std.Address(parts[1]) + balance := UserTeller.BalanceOf(owner) return ufmt.Sprintf("%d\n", balance) default: return "404\n" diff --git a/contract/r/gnoswap/test_token/baz/baz.gno b/contract/r/gnoswap/test_token/baz/baz.gno index c1dbdca1e..ded2890ad 100644 --- a/contract/r/gnoswap/test_token/baz/baz.gno +++ b/contract/r/gnoswap/test_token/baz/baz.gno @@ -1,15 +1,14 @@ package baz import ( + "std" "strings" "gno.land/p/demo/grc/grc20" "gno.land/p/demo/ownable" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/demo/grc20reg" - "gno.land/r/demo/users" ) var ( @@ -28,37 +27,29 @@ func TotalSupply() uint64 { return UserTeller.TotalSupply() } -func BalanceOf(owner pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - return UserTeller.BalanceOf(ownerAddr) +func BalanceOf(owner std.Address) uint64 { + return UserTeller.BalanceOf(owner) } -func Allowance(owner, spender pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - spenderAddr := users.Resolve(spender) - return UserTeller.Allowance(ownerAddr, spenderAddr) +func Allowance(owner, spender std.Address) uint64 { + return UserTeller.Allowance(owner, spender) } -func Transfer(to pusers.AddressOrName, amount uint64) { - toAddr := users.Resolve(to) - checkErr(UserTeller.Transfer(toAddr, amount)) +func Transfer(to std.Address, amount uint64) { + checkErr(UserTeller.Transfer(to, amount)) } -func Approve(spender pusers.AddressOrName, amount uint64) { - spenderAddr := users.Resolve(spender) - checkErr(UserTeller.Approve(spenderAddr, amount)) +func Approve(spender std.Address, amount uint64) { + checkErr(UserTeller.Approve(spender, amount)) } -func TransferFrom(from, to pusers.AddressOrName, amount uint64) { - fromAddr := users.Resolve(from) - toAddr := users.Resolve(to) - checkErr(UserTeller.TransferFrom(fromAddr, toAddr, amount)) +func TransferFrom(from, to std.Address, amount uint64) { + checkErr(UserTeller.TransferFrom(from, to, amount)) } -func Burn(from pusers.AddressOrName, amount uint64) { +func Burn(from std.Address, amount uint64) { owner.AssertCallerIsOwner() - fromAddr := users.Resolve(from) - checkErr(privateLedger.Burn(fromAddr, amount)) + checkErr(privateLedger.Burn(from, amount)) } func Render(path string) string { @@ -69,9 +60,8 @@ func Render(path string) string { case path == "": return Token.RenderHome() case c == 2 && parts[0] == "balance": - owner := pusers.AddressOrName(parts[1]) - ownerAddr := users.Resolve(owner) - balance := UserTeller.BalanceOf(ownerAddr) + owner := std.Address(parts[1]) + balance := UserTeller.BalanceOf(owner) return ufmt.Sprintf("%d\n", balance) default: return "404\n" diff --git a/contract/r/gnoswap/test_token/foo/foo.gno b/contract/r/gnoswap/test_token/foo/foo.gno index e99ee1d95..59b6e3a9f 100644 --- a/contract/r/gnoswap/test_token/foo/foo.gno +++ b/contract/r/gnoswap/test_token/foo/foo.gno @@ -1,19 +1,18 @@ package foo import ( + "std" "strings" "gno.land/p/demo/grc/grc20" "gno.land/p/demo/ownable" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/demo/grc20reg" - "gno.land/r/demo/users" ) var ( - Token, privateLedger = grc20.NewToken("Baz", "BAZ", 6) + Token, privateLedger = grc20.NewToken("Foo", "FOO", 6) UserTeller = Token.CallerTeller() owner = ownable.NewWithAddress("g17290cwvmrapvp869xfnhhawa8sm9edpufzat7d") // ADMIN ) @@ -28,37 +27,29 @@ func TotalSupply() uint64 { return UserTeller.TotalSupply() } -func BalanceOf(owner pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - return UserTeller.BalanceOf(ownerAddr) +func BalanceOf(owner std.Address) uint64 { + return UserTeller.BalanceOf(owner) } -func Allowance(owner, spender pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - spenderAddr := users.Resolve(spender) - return UserTeller.Allowance(ownerAddr, spenderAddr) +func Allowance(owner, spender std.Address) uint64 { + return UserTeller.Allowance(owner, spender) } -func Transfer(to pusers.AddressOrName, amount uint64) { - toAddr := users.Resolve(to) - checkErr(UserTeller.Transfer(toAddr, amount)) +func Transfer(to std.Address, amount uint64) { + checkErr(UserTeller.Transfer(to, amount)) } -func Approve(spender pusers.AddressOrName, amount uint64) { - spenderAddr := users.Resolve(spender) - checkErr(UserTeller.Approve(spenderAddr, amount)) +func Approve(spender std.Address, amount uint64) { + checkErr(UserTeller.Approve(spender, amount)) } -func TransferFrom(from, to pusers.AddressOrName, amount uint64) { - fromAddr := users.Resolve(from) - toAddr := users.Resolve(to) - checkErr(UserTeller.TransferFrom(fromAddr, toAddr, amount)) +func TransferFrom(from, to std.Address, amount uint64) { + checkErr(UserTeller.TransferFrom(from, to, amount)) } -func Burn(from pusers.AddressOrName, amount uint64) { +func Burn(from std.Address, amount uint64) { owner.AssertCallerIsOwner() - fromAddr := users.Resolve(from) - checkErr(privateLedger.Burn(fromAddr, amount)) + checkErr(privateLedger.Burn(from, amount)) } func Render(path string) string { @@ -69,9 +60,8 @@ func Render(path string) string { case path == "": return Token.RenderHome() case c == 2 && parts[0] == "balance": - owner := pusers.AddressOrName(parts[1]) - ownerAddr := users.Resolve(owner) - balance := UserTeller.BalanceOf(ownerAddr) + owner := std.Address(parts[1]) + balance := UserTeller.BalanceOf(owner) return ufmt.Sprintf("%d\n", balance) default: return "404\n" diff --git a/contract/r/gnoswap/test_token/obl/obl.gno b/contract/r/gnoswap/test_token/obl/obl.gno index 976cc088a..a37ca265e 100644 --- a/contract/r/gnoswap/test_token/obl/obl.gno +++ b/contract/r/gnoswap/test_token/obl/obl.gno @@ -1,15 +1,14 @@ package obl import ( + "std" "strings" "gno.land/p/demo/grc/grc20" "gno.land/p/demo/ownable" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/demo/grc20reg" - "gno.land/r/demo/users" ) var ( @@ -28,37 +27,29 @@ func TotalSupply() uint64 { return UserTeller.TotalSupply() } -func BalanceOf(owner pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - return UserTeller.BalanceOf(ownerAddr) +func BalanceOf(owner std.Address) uint64 { + return UserTeller.BalanceOf(owner) } -func Allowance(owner, spender pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - spenderAddr := users.Resolve(spender) - return UserTeller.Allowance(ownerAddr, spenderAddr) +func Allowance(owner, spender std.Address) uint64 { + return UserTeller.Allowance(owner, spender) } -func Transfer(to pusers.AddressOrName, amount uint64) { - toAddr := users.Resolve(to) - checkErr(UserTeller.Transfer(toAddr, amount)) +func Transfer(to std.Address, amount uint64) { + checkErr(UserTeller.Transfer(to, amount)) } -func Approve(spender pusers.AddressOrName, amount uint64) { - spenderAddr := users.Resolve(spender) - checkErr(UserTeller.Approve(spenderAddr, amount)) +func Approve(spender std.Address, amount uint64) { + checkErr(UserTeller.Approve(spender, amount)) } -func TransferFrom(from, to pusers.AddressOrName, amount uint64) { - fromAddr := users.Resolve(from) - toAddr := users.Resolve(to) - checkErr(UserTeller.TransferFrom(fromAddr, toAddr, amount)) +func TransferFrom(from, to std.Address, amount uint64) { + checkErr(UserTeller.TransferFrom(from, to, amount)) } -func Burn(from pusers.AddressOrName, amount uint64) { +func Burn(from std.Address, amount uint64) { owner.AssertCallerIsOwner() - fromAddr := users.Resolve(from) - checkErr(privateLedger.Burn(fromAddr, amount)) + checkErr(privateLedger.Burn(from, amount)) } func Render(path string) string { @@ -69,9 +60,8 @@ func Render(path string) string { case path == "": return Token.RenderHome() case c == 2 && parts[0] == "balance": - owner := pusers.AddressOrName(parts[1]) - ownerAddr := users.Resolve(owner) - balance := UserTeller.BalanceOf(ownerAddr) + owner := std.Address(parts[1]) + balance := UserTeller.BalanceOf(owner) return ufmt.Sprintf("%d\n", balance) default: return "404\n" diff --git a/contract/r/gnoswap/test_token/qux/qux.gno b/contract/r/gnoswap/test_token/qux/qux.gno index 29aaec1b6..9fd7b44c9 100644 --- a/contract/r/gnoswap/test_token/qux/qux.gno +++ b/contract/r/gnoswap/test_token/qux/qux.gno @@ -1,15 +1,14 @@ package qux import ( + "std" "strings" "gno.land/p/demo/grc/grc20" "gno.land/p/demo/ownable" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/demo/grc20reg" - "gno.land/r/demo/users" ) var ( @@ -28,37 +27,29 @@ func TotalSupply() uint64 { return UserTeller.TotalSupply() } -func BalanceOf(owner pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - return UserTeller.BalanceOf(ownerAddr) +func BalanceOf(owner std.Address) uint64 { + return UserTeller.BalanceOf(owner) } -func Allowance(owner, spender pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - spenderAddr := users.Resolve(spender) - return UserTeller.Allowance(ownerAddr, spenderAddr) +func Allowance(owner, spender std.Address) uint64 { + return UserTeller.Allowance(owner, spender) } -func Transfer(to pusers.AddressOrName, amount uint64) { - toAddr := users.Resolve(to) - checkErr(UserTeller.Transfer(toAddr, amount)) +func Transfer(to std.Address, amount uint64) { + checkErr(UserTeller.Transfer(to, amount)) } -func Approve(spender pusers.AddressOrName, amount uint64) { - spenderAddr := users.Resolve(spender) - checkErr(UserTeller.Approve(spenderAddr, amount)) +func Approve(spender std.Address, amount uint64) { + checkErr(UserTeller.Approve(spender, amount)) } -func TransferFrom(from, to pusers.AddressOrName, amount uint64) { - fromAddr := users.Resolve(from) - toAddr := users.Resolve(to) - checkErr(UserTeller.TransferFrom(fromAddr, toAddr, amount)) +func TransferFrom(from, to std.Address, amount uint64) { + checkErr(UserTeller.TransferFrom(from, to, amount)) } -func Burn(from pusers.AddressOrName, amount uint64) { +func Burn(from std.Address, amount uint64) { owner.AssertCallerIsOwner() - fromAddr := users.Resolve(from) - checkErr(privateLedger.Burn(fromAddr, amount)) + checkErr(privateLedger.Burn(from, amount)) } func Render(path string) string { @@ -69,9 +60,8 @@ func Render(path string) string { case path == "": return Token.RenderHome() case c == 2 && parts[0] == "balance": - owner := pusers.AddressOrName(parts[1]) - ownerAddr := users.Resolve(owner) - balance := UserTeller.BalanceOf(ownerAddr) + owner := std.Address(parts[1]) + balance := UserTeller.BalanceOf(owner) return ufmt.Sprintf("%d\n", balance) default: return "404\n" diff --git a/contract/r/gnoswap/test_token/usdc/usdc.gno b/contract/r/gnoswap/test_token/usdc/usdc.gno index c0469bd1f..d83bc93a2 100644 --- a/contract/r/gnoswap/test_token/usdc/usdc.gno +++ b/contract/r/gnoswap/test_token/usdc/usdc.gno @@ -1,15 +1,14 @@ package usdc import ( + "std" "strings" "gno.land/p/demo/grc/grc20" "gno.land/p/demo/ownable" "gno.land/p/demo/ufmt" - pusers "gno.land/p/demo/users" "gno.land/r/demo/grc20reg" - "gno.land/r/demo/users" ) var ( @@ -28,37 +27,29 @@ func TotalSupply() uint64 { return UserTeller.TotalSupply() } -func BalanceOf(owner pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - return UserTeller.BalanceOf(ownerAddr) +func BalanceOf(owner std.Address) uint64 { + return UserTeller.BalanceOf(owner) } -func Allowance(owner, spender pusers.AddressOrName) uint64 { - ownerAddr := users.Resolve(owner) - spenderAddr := users.Resolve(spender) - return UserTeller.Allowance(ownerAddr, spenderAddr) +func Allowance(owner, spender std.Address) uint64 { + return UserTeller.Allowance(owner, spender) } -func Transfer(to pusers.AddressOrName, amount uint64) { - toAddr := users.Resolve(to) - checkErr(UserTeller.Transfer(toAddr, amount)) +func Transfer(to std.Address, amount uint64) { + checkErr(UserTeller.Transfer(to, amount)) } -func Approve(spender pusers.AddressOrName, amount uint64) { - spenderAddr := users.Resolve(spender) - checkErr(UserTeller.Approve(spenderAddr, amount)) +func Approve(spender std.Address, amount uint64) { + checkErr(UserTeller.Approve(spender, amount)) } -func TransferFrom(from, to pusers.AddressOrName, amount uint64) { - fromAddr := users.Resolve(from) - toAddr := users.Resolve(to) - checkErr(UserTeller.TransferFrom(fromAddr, toAddr, amount)) +func TransferFrom(from, to std.Address, amount uint64) { + checkErr(UserTeller.TransferFrom(from, to, amount)) } -func Burn(from pusers.AddressOrName, amount uint64) { +func Burn(from std.Address, amount uint64) { owner.AssertCallerIsOwner() - fromAddr := users.Resolve(from) - checkErr(privateLedger.Burn(fromAddr, amount)) + checkErr(privateLedger.Burn(from, amount)) } func Render(path string) string { @@ -69,9 +60,8 @@ func Render(path string) string { case path == "": return Token.RenderHome() case c == 2 && parts[0] == "balance": - owner := pusers.AddressOrName(parts[1]) - ownerAddr := users.Resolve(owner) - balance := UserTeller.BalanceOf(ownerAddr) + owner := std.Address(parts[1]) + balance := UserTeller.BalanceOf(owner) return ufmt.Sprintf("%d\n", balance) default: return "404\n"