Skip to content

Commit

Permalink
Fix compute tests
Browse files Browse the repository at this point in the history
  • Loading branch information
iKapitonau committed Aug 16, 2024
1 parent 74080c2 commit e47dd2e
Show file tree
Hide file tree
Showing 14 changed files with 279 additions and 440 deletions.
2 changes: 1 addition & 1 deletion x/compute/internal/keeper/bench_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ func initBenchContract(t *testing.T) (contract sdk.AccAddress, creator sdk.AccAd
accKeeper, keeper := keepers.AccountKeeper, keepers.WasmKeeper

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
creator, creatorPriv, _ = CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...), 2001)
creator, creatorPriv, _ = CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...))

// store the code
wasmCode, err := os.ReadFile(TestContractPaths[benchContract])
Expand Down
2 changes: 1 addition & 1 deletion x/compute/internal/keeper/distribution_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ func TestDistributionRewards(t *testing.T) {

depositCoin := sdk.NewInt64Coin(sdk.DefaultBondDenom, 5_000_000_000)
deposit := sdk.NewCoins(depositCoin)
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit, 8000)
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit)
require.Equal(t, keeper.bankKeeper.GetBalance(ctx, creator, sdk.DefaultBondDenom), depositCoin)

delTokens := sdk.TokensFromConsensusPower(1000, sdk.DefaultPowerReduction)
Expand Down
4 changes: 2 additions & 2 deletions x/compute/internal/keeper/gov_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ func TestGovQueryProposals(t *testing.T) {
govKeeper.Params.Set(ctx, v1types.DefaultParams())

deposit := sdk.NewCoins(sdk.NewInt64Coin("stake", 5_000_000_000))
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit, 1071)
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit)
//

// upload staking derivates code
Expand Down Expand Up @@ -120,7 +120,7 @@ func TestGovVote(t *testing.T) {
deposit2 := sdk.NewCoins(sdk.NewInt64Coin("stake", 5_000_000_000))
deposit := sdk.NewCoins(sdk.NewInt64Coin("stake", 5_000_000_000))
initFunds := sdk.NewCoins(sdk.NewInt64Coin("stake", 10_000_000_000))
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, initFunds, 1070)
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, initFunds)
//

// upload staking derivates code
Expand Down
82 changes: 42 additions & 40 deletions x/compute/internal/keeper/keeper_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -83,7 +83,7 @@ func TestCreate(t *testing.T) {
accKeeper, keeper := keepers.AccountKeeper, keepers.WasmKeeper

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
creator, _, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit, 2002)
creator, _, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit)

wasmCode, err := os.ReadFile(TestContractPaths[hackAtomContract])
require.NoError(t, err)
Expand All @@ -108,7 +108,7 @@ func TestCreateDuplicate(t *testing.T) {
accKeeper, keeper := keepers.AccountKeeper, keepers.WasmKeeper

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
creator, _, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit, 2003)
creator, _, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit)

wasmCode, err := os.ReadFile(TestContractPaths[hackAtomContract])
require.NoError(t, err)
Expand Down Expand Up @@ -146,7 +146,7 @@ func TestCreateWithSimulation(t *testing.T) {
WithGasMeter(stypes.NewInfiniteGasMeter())

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
creator, _, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit, 2004)
creator, _, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit)

wasmCode, err := os.ReadFile(TestContractPaths[hackAtomContract])
require.NoError(t, err)
Expand Down Expand Up @@ -205,7 +205,7 @@ func TestCreateWithGzippedPayload(t *testing.T) {
accKeeper, keeper := keepers.AccountKeeper, keepers.WasmKeeper

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
creator, _, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit, 2005)
creator, _, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit)

wasmCode, err := os.ReadFile(filepath.Join(".", contractPath, "test_gzip_contract.wasm.gz"))
require.NoError(t, err)
Expand Down Expand Up @@ -242,7 +242,7 @@ func TestInstantiate(t *testing.T) {
accKeeper, keeper := keepers.AccountKeeper, keepers.WasmKeeper

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
creator, privKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit, 2006)
creator, privKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit)

wasmCode, err := os.ReadFile(TestContractPaths[hackAtomContract])
require.NoError(t, err)
Expand Down Expand Up @@ -297,8 +297,7 @@ func TestInstantiate(t *testing.T) {
// create with no balance is also legal
contractAddr, _, err := keeper.Instantiate(ctx, contractID, creator, nil, initMsgBz, "demo contract 1", nil, nil)
require.NoError(t, err)
// TODO: uncomment when all tests are fixed
// require.Equal(t, "secret1uhfqhj6cvt7983n6xdxkjhfvx9833qk5pmgfl4", contractAddr.String())
require.Equal(t, "secret1hqy37xwhgaj6dlnevnsr5q2077uv36ceqd74ec", contractAddr.String())

// gas can change +- 10% before we start failing, though maybe for consensus we should check a constant amount
gasAfter := ctx.GasMeter().GasConsumed()
Expand Down Expand Up @@ -329,11 +328,13 @@ func TestInstantiateWithDeposit(t *testing.T) {
fundAddr: false,
expError: true,
},
// "blocked address": {
// srcActor: supply.NewModuleAddress(auth.FeeCollectorName),
// fundAddr: true,
// expError: true,
// },
/*
"blocked address": {
srcActor: supply.NewModuleAddress(auth.FeeCollectorName),
fundAddr: true,
expError: true,
},
*/
}
for msg, spec := range specs {
t.Run(msg, func(t *testing.T) {
Expand All @@ -344,9 +345,9 @@ func TestInstantiateWithDeposit(t *testing.T) {
if spec.fundAddr {
funds = 200
}
bob, bobPriv, _ := CreateFakeFundedAccount(ctx, keeper.accountKeeper, keeper.bankKeeper, sdk.NewCoins(sdk.NewInt64Coin("denom", funds)), 2007)
bob, bobPriv, _ := CreateFakeFundedAccount(ctx, keeper.accountKeeper, keeper.bankKeeper, sdk.NewCoins(sdk.NewInt64Coin("denom", funds)))

fred, _, _ := CreateFakeFundedAccount(ctx, keeper.accountKeeper, keeper.bankKeeper, sdk.NewCoins(sdk.NewInt64Coin("denom", 0)), 2008)
fred, _, _ := CreateFakeFundedAccount(ctx, keeper.accountKeeper, keeper.bankKeeper, sdk.NewCoins(sdk.NewInt64Coin("denom", 0)))

initMsgBz, err := json.Marshal(InitMsg{Verifier: fred, Beneficiary: bob})
require.NoError(t, err)
Expand Down Expand Up @@ -382,7 +383,7 @@ func TestInstantiateWithNonExistingCodeID(t *testing.T) {
accKeeper, keeper := keepers.AccountKeeper, keepers.WasmKeeper

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
creator, privKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit, 2009)
creator, privKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit)

const nonExistingCodeID = 9999

Expand Down Expand Up @@ -429,8 +430,8 @@ func TestExecute(t *testing.T) {

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
topUp := sdk.NewCoins(sdk.NewInt64Coin("denom", 5000))
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...), 2010)
fred, privFred, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, topUp, 2011)
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...))
fred, privFred, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, topUp)

wasmCode, err := os.ReadFile(TestContractPaths[hackAtomContract])
require.NoError(t, err)
Expand Down Expand Up @@ -466,8 +467,7 @@ func TestExecute(t *testing.T) {

require.NoError(t, err)

// TODO: uncomment when all tests are fixed
// require.Equal(t, "secret12exhpaft5rv3t8lcw9nykudxaddq2nmtv4r3tl", addr.String())
require.Equal(t, "secret15epw6kku2uzeae27u9m6zh2q8z7ynvqrwnsxup", addr.String())

// ensure bob doesn't exist
bobAcct := accKeeper.GetAccount(ctx, bob)
Expand Down Expand Up @@ -556,18 +556,20 @@ func TestExecuteWithDeposit(t *testing.T) {
fundAddr: false,
expError: true,
},
// "blocked address as actor": {
// srcActor: blockedAddr,
// fundAddr: true,
// beneficiary: fred,
// expError: true,
// },
// "blocked address as beneficiary": {
// srcActor: bob,
// fundAddr: true,
// beneficiary: blockedAddr,
// expError: true,
// },
/*
"blocked address as actor": {
srcActor: blockedAddr,
fundAddr: true,
beneficiary: fred,
expError: true,
},
"blocked address as beneficiary": {
srcActor: bob,
fundAddr: true,
beneficiary: blockedAddr,
expError: true,
},
*/
}
for msg, spec := range specs {
t.Run(msg, func(t *testing.T) {
Expand All @@ -578,8 +580,8 @@ func TestExecuteWithDeposit(t *testing.T) {
if spec.fundAddr {
funds = 200
}
bob, bobPriv, _ := CreateFakeFundedAccount(ctx, keeper.accountKeeper, keeper.bankKeeper, sdk.NewCoins(sdk.NewInt64Coin("denom", funds)), 2012)
fred, _, _ := CreateFakeFundedAccount(ctx, keeper.accountKeeper, keeper.bankKeeper, sdk.NewCoins(sdk.NewInt64Coin("denom", 0)), 2013)
bob, bobPriv, _ := CreateFakeFundedAccount(ctx, keeper.accountKeeper, keeper.bankKeeper, sdk.NewCoins(sdk.NewInt64Coin("denom", funds)))
fred, _, _ := CreateFakeFundedAccount(ctx, keeper.accountKeeper, keeper.bankKeeper, sdk.NewCoins(sdk.NewInt64Coin("denom", 0)))

initMsgBz, err := json.Marshal(InitMsg{Verifier: bob, Beneficiary: fred})
require.NoError(t, err)
Expand Down Expand Up @@ -619,7 +621,7 @@ func TestExecuteWithNonExistingAddress(t *testing.T) {
accKeeper, keeper := keepers.AccountKeeper, keepers.WasmKeeper

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
creator, privKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...), 2014)
creator, privKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...))

// unauthorized - trialCtx so we don't change state
nonExistingAddress := sdk.AccAddress([]byte{9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9})
Expand Down Expand Up @@ -660,8 +662,8 @@ func TestExecuteWithPanic(t *testing.T) {

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
topUp := sdk.NewCoins(sdk.NewInt64Coin("denom", 5000))
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...), 2015)
fred, fredPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, topUp, 2016)
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...))
fred, fredPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, topUp)

wasmCode, err := os.ReadFile(TestContractPaths[hackAtomContract])
require.NoError(t, err)
Expand Down Expand Up @@ -717,8 +719,8 @@ func TestExecuteWithCpuLoop(t *testing.T) {

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
topUp := sdk.NewCoins(sdk.NewInt64Coin("denom", 5000))
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...), 2017)
fred, fredPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, topUp, 2018)
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...))
fred, fredPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, topUp)

wasmCode, err := os.ReadFile(TestContractPaths[hackAtomContract])
require.NoError(t, err)
Expand Down Expand Up @@ -833,8 +835,8 @@ func TestExecuteWithStorageLoop(t *testing.T) {

deposit := sdk.NewCoins(sdk.NewInt64Coin("denom", 100000))
topUp := sdk.NewCoins(sdk.NewInt64Coin("denom", 5000))
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...), 2019)
fred, fredPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, topUp, 2020)
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit.Add(deposit...))
fred, fredPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, topUp)

wasmCode, err := os.ReadFile(TestContractPaths[hackAtomContract])
require.NoError(t, err)
Expand Down
2 changes: 1 addition & 1 deletion x/compute/internal/keeper/mint_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ func TestMintQuerier(t *testing.T) {
assert.Equal(t, v.GetDelegatorShares(), math.LegacyNewDec(100))

deposit := sdk.NewCoins(sdk.NewInt64Coin(sdk.DefaultBondDenom, 5_000_000_000))
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit, 9000)
creator, creatorPrivKey, _ := CreateFakeFundedAccount(ctx, accKeeper, keeper.bankKeeper, deposit)

delTokens := sdk.TokensFromConsensusPower(1000, sdk.DefaultPowerReduction)
msg2 := stakingtypes.NewMsgDelegate(creator.String(), valAddr.String(),
Expand Down
Loading

0 comments on commit e47dd2e

Please sign in to comment.