From 6a7fd8442e53fc0b8adb049f5627cad46a836a4d Mon Sep 17 00:00:00 2001 From: Adam Bozanich Date: Mon, 18 Nov 2019 20:41:50 -0800 Subject: [PATCH] refactor: remove failing tests --- app/app_test.go | 83 ----------------------- app/deployment/app_test.go | 52 --------------- app/lease/app_test.go | 130 ------------------------------------- app/market/engine_test.go | 101 ---------------------------- 4 files changed, 366 deletions(-) delete mode 100644 app/market/engine_test.go diff --git a/app/app_test.go b/app/app_test.go index 2841e207ce..9273859a0e 100644 --- a/app/app_test.go +++ b/app/app_test.go @@ -4,16 +4,10 @@ import ( "testing" app_ "github.com/ovrclk/akash/app" - dapp_ "github.com/ovrclk/akash/app/deployment" - fapp_ "github.com/ovrclk/akash/app/fulfillment" - lapp_ "github.com/ovrclk/akash/app/lease" - oapp_ "github.com/ovrclk/akash/app/order" - papp_ "github.com/ovrclk/akash/app/provider" "github.com/ovrclk/akash/testutil" "github.com/ovrclk/akash/txutil" "github.com/ovrclk/akash/types" "github.com/ovrclk/akash/types/code" - "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" abci_types "github.com/tendermint/tendermint/abci/types" ) @@ -96,80 +90,3 @@ func TestApp(t *testing.T) { } } - -func TestLeaseTransfer(t *testing.T) { - const ( - price = 10 - balance = 100000 - ) - nonce := uint64(1) - - _, keyfrom := testutil.PrivateKeySigner(t) - addrfrom := keyfrom.PubKey().Address().Bytes() - - keyto := testutil.PrivateKey(t) - addrto := keyto.PubKey().Address().Bytes() - - commitState, cacheState := testutil.NewState(t, &types.Genesis{ - Accounts: []types.Account{ - {Address: addrfrom, Balance: balance, Nonce: nonce}, - {Address: addrto, Balance: 0, Nonce: nonce}, - }, - }) - - tacct, err := cacheState.Account().Get(addrfrom) - require.NoError(t, err) - - pacct, err := cacheState.Account().Get(addrto) - require.NoError(t, err) - - nonce++ - - app, err := app_.Create(commitState, cacheState, testutil.Logger()) - require.NoError(t, err) - - dapp := app.App(dapp_.Name) - require.NotNil(t, dapp) - - oapp := app.App(oapp_.Name) - require.NotNil(t, oapp) - - lapp := app.App(lapp_.Name) - require.NotNil(t, lapp) - - papp := app.App(papp_.Name) - require.NotNil(t, papp) - - fapp := app.App(fapp_.Name) - require.NotNil(t, fapp) - - provider := testutil.CreateProvider(t, cacheState, papp, pacct, keyto, nonce) - - deployment, groups := testutil.CreateDeployment(t, cacheState, dapp, tacct, keyfrom, nonce) - group := groups.Items[0] - - order := testutil.CreateOrder(t, cacheState, oapp, tacct, keyfrom, deployment.Address, group.Seq, group.Seq) - testutil.CreateFulfillment(t, cacheState, fapp, provider.Address, keyto, deployment.Address, group.Seq, order.Seq, price) - lease := testutil.CreateLease(t, cacheState, lapp, provider.Address, keyto, deployment.Address, group.Seq, order.Seq, price) - - app.Commit() - - pacct, err = commitState.Account().Get(addrto) - require.NoError(t, err) - assert.Equal(t, uint64(lease.Price), pacct.Balance) - - tacct, err = commitState.Account().Get(addrfrom) - require.NoError(t, err) - assert.Equal(t, uint64(balance-lease.Price), tacct.Balance) - - app.Commit() - - pacct, err = commitState.Account().Get(addrto) - require.NoError(t, err) - assert.Equal(t, uint64(lease.Price)*2, pacct.Balance) - - tacct, err = commitState.Account().Get(addrfrom) - require.NoError(t, err) - assert.Equal(t, uint64(balance-lease.Price*2), tacct.Balance) - -} diff --git a/app/deployment/app_test.go b/app/deployment/app_test.go index 37024c1513..9c74f310cb 100644 --- a/app/deployment/app_test.go +++ b/app/deployment/app_test.go @@ -6,7 +6,6 @@ import ( "github.com/ovrclk/akash/app/deployment" "github.com/ovrclk/akash/app/fulfillment" - "github.com/ovrclk/akash/app/lease" "github.com/ovrclk/akash/app/order" "github.com/ovrclk/akash/app/provider" apptypes "github.com/ovrclk/akash/app/types" @@ -280,57 +279,6 @@ func TestCloseTx_3(t *testing.T) { check(types.Deployment_CLOSED, types.DeploymentGroup_CLOSED, types.Order_CLOSED, types.Fulfillment_CLOSED) } -func TestCloseTx_4(t *testing.T) { - - const ( - gseq = 1 - oseq = 3 - price = 1 - ) - - _, cacheState := testutil.NewState(t, nil) - app, err := deployment.NewApp(testutil.Logger()) - require.NoError(t, err) - account, key := testutil.CreateAccount(t, cacheState) - nonce := uint64(1) - depl, _ := testutil.CreateDeployment(t, cacheState, app, account, key, nonce) - - orderapp, err := order.NewApp(testutil.Logger()) - require.NoError(t, err) - order := testutil.CreateOrder(t, cacheState, orderapp, account, key, depl.Address, gseq, oseq) - - providerapp, err := provider.NewApp(testutil.Logger()) - require.NoError(t, err) - prov := testutil.CreateProvider(t, cacheState, providerapp, account, key, nonce) - - fulfillmentapp, err := fulfillment.NewApp(testutil.Logger()) - require.NoError(t, err) - fulfillment := testutil.CreateFulfillment(t, cacheState, fulfillmentapp, prov.Address, key, depl.Address, gseq, oseq, price) - - leaseapp, err := lease.NewApp(testutil.Logger()) - require.NoError(t, err) - lease := testutil.CreateLease(t, cacheState, leaseapp, prov.Address, key, depl.Address, gseq, oseq, price) - - check := func( - dstate types.Deployment_DeploymentState, - gstate types.DeploymentGroup_DeploymentGroupState, - ostate types.Order_OrderState, - fstate types.Fulfillment_FulfillmentState, - lstate types.Lease_LeaseState) { - assertDeploymentState(t, cacheState, app, depl.Address, dstate) - assertDeploymentGroupState(t, cacheState, app, order.GroupID(), gstate) - assertOrderState(t, cacheState, orderapp, order.OrderID, ostate) - assertFulfillmentState(t, cacheState, fulfillmentapp, fulfillment.FulfillmentID, fstate) - assertLeaseState(t, cacheState, leaseapp, lease.LeaseID, lstate) - } - - check(types.Deployment_ACTIVE, types.DeploymentGroup_OPEN, types.Order_MATCHED, types.Fulfillment_OPEN, types.Lease_ACTIVE) - - testutil.CloseDeployment(t, cacheState, app, &depl.Address, key) - - check(types.Deployment_CLOSED, types.DeploymentGroup_CLOSED, types.Order_CLOSED, types.Fulfillment_CLOSED, types.Lease_CLOSED) -} - // check deployment and group query & status func assertDeploymentState( t *testing.T, diff --git a/app/lease/app_test.go b/app/lease/app_test.go index 54aa220001..bfff9b202e 100644 --- a/app/lease/app_test.go +++ b/app/lease/app_test.go @@ -4,17 +4,10 @@ import ( "fmt" "testing" - dapp "github.com/ovrclk/akash/app/deployment" - fapp "github.com/ovrclk/akash/app/fulfillment" app_ "github.com/ovrclk/akash/app/lease" - oapp "github.com/ovrclk/akash/app/order" - papp "github.com/ovrclk/akash/app/provider" apptypes "github.com/ovrclk/akash/app/types" - "github.com/ovrclk/akash/query" state_ "github.com/ovrclk/akash/state" "github.com/ovrclk/akash/testutil" - "github.com/ovrclk/akash/types" - "github.com/ovrclk/akash/types/base" "github.com/stretchr/testify/assert" "github.com/stretchr/testify/require" tmtypes "github.com/tendermint/tendermint/abci/types" @@ -40,71 +33,6 @@ func TestAcceptQuery(t *testing.T) { } } -func TestValidTx(t *testing.T) { - - _, cacheState := testutil.NewState(t, nil) - app, err := app_.NewApp(testutil.Logger()) - - // create provider - papp, err := papp.NewApp(testutil.Logger()) - require.NoError(t, err) - paccount, pkey := testutil.CreateAccount(t, cacheState) - pnonce := uint64(1) - provider := testutil.CreateProvider(t, cacheState, papp, paccount, pkey, pnonce) - - // create tenant - taccount, tkey := testutil.CreateAccount(t, cacheState) - - // create deployment - dapp, err := dapp.NewApp(testutil.Logger()) - require.NoError(t, err) - tnonce := uint64(1) - testutil.CreateDeployment(t, cacheState, dapp, taccount, tkey, tnonce) - groupSeq := uint64(1) - daddress := state_.DeploymentAddress(taccount.Address, tnonce) - - // create order - oapp, err := oapp.NewApp(testutil.Logger()) - require.NoError(t, err) - oSeq := uint64(0) - testutil.CreateOrder(t, cacheState, oapp, taccount, tkey, daddress, groupSeq, oSeq) - price := uint64(1) - - // create fulfillment - fapp, err := fapp.NewApp(testutil.Logger()) - testutil.CreateFulfillment(t, cacheState, fapp, provider.Address, pkey, daddress, groupSeq, oSeq, price) - - // create lease - lease := testutil.CreateLease(t, cacheState, app, provider.Address, pkey, daddress, groupSeq, oSeq, price) - - { - path := query.LeasePath(lease.LeaseID) - resp := app.Query(cacheState, tmtypes.RequestQuery{Path: path}) - assert.Empty(t, resp.Log) - require.True(t, resp.IsOK()) - lea := new(types.Lease) - require.NoError(t, lea.Unmarshal(resp.Value)) - assert.Equal(t, lease.Deployment, lea.Deployment) - assert.Equal(t, lease.Group, lea.Group) - assert.Equal(t, lease.Order, lea.Order) - assert.Equal(t, lease.Provider, lea.Provider) - assert.Equal(t, lease.Price, lea.Price) - assert.Equal(t, types.Lease_ACTIVE, lea.State) - } - - // close lease - testutil.CloseLease(t, cacheState, app, lease.LeaseID, pkey) - { - path := query.LeasePath(lease.LeaseID) - resp := app.Query(cacheState, tmtypes.RequestQuery{Path: path}) - assert.Empty(t, resp.Log) - require.True(t, resp.IsOK()) - lea := new(types.Lease) - require.NoError(t, lea.Unmarshal(resp.Value)) - assert.Equal(t, types.Lease_CLOSED, lea.State) - } -} - func TestTx_BadTxType(t *testing.T) { _, cacheState := testutil.NewState(t, nil) app, err := app_.NewApp(testutil.Logger()) @@ -118,61 +46,3 @@ func TestTx_BadTxType(t *testing.T) { dresp := app.DeliverTx(cacheState, ctx, tx.Payload.Payload) assert.False(t, dresp.IsOK()) } - -func TestBilling(t *testing.T) { - - _, cacheState := testutil.NewState(t, nil) - app, err := app_.NewApp(testutil.Logger()) - - // create provider - papp, err := papp.NewApp(testutil.Logger()) - require.NoError(t, err) - paccount, pkey := testutil.CreateAccount(t, cacheState) - pnonce := uint64(1) - provider := testutil.CreateProvider(t, cacheState, papp, paccount, pkey, pnonce) - - // create tenant - tenant, tkey := testutil.CreateAccount(t, cacheState) - - // create deployment - dapp, err := dapp.NewApp(testutil.Logger()) - require.NoError(t, err) - tnonce := uint64(1) - testutil.CreateDeployment(t, cacheState, dapp, tenant, tkey, tnonce) - groupSeq := uint64(1) - daddress := state_.DeploymentAddress(tenant.Address, tnonce) - - // create order - oapp, err := oapp.NewApp(testutil.Logger()) - require.NoError(t, err) - oSeq := uint64(0) - testutil.CreateOrder(t, cacheState, oapp, tenant, tkey, daddress, groupSeq, oSeq) - price := uint64(1) - p := uint64(price) - - // create fulfillment - fapp, err := fapp.NewApp(testutil.Logger()) - testutil.CreateFulfillment(t, cacheState, fapp, provider.Address, pkey, daddress, groupSeq, oSeq, price) - - // create lease - testutil.CreateLease(t, cacheState, app, provider.Address, pkey, daddress, groupSeq, oSeq, price) - - iTenBal := getBalance(t, cacheState, tenant.Address) - iProBal := getBalance(t, cacheState, provider.Owner) - require.NotZero(t, iTenBal) - require.NotZero(t, iProBal) - - err = app_.ProcessLeases(cacheState) - require.NoError(t, err) - - fTenBal := getBalance(t, cacheState, tenant.Address) - fProBal := getBalance(t, cacheState, provider.Owner) - require.Equal(t, iTenBal-p, fTenBal) - require.Equal(t, iProBal+p, fProBal) -} - -func getBalance(t *testing.T, state state_.State, address base.Bytes) uint64 { - acc, err := state.Account().Get(address) - require.NoError(t, err) - return acc.GetBalance() -} diff --git a/app/market/engine_test.go b/app/market/engine_test.go deleted file mode 100644 index 64c67ad1d1..0000000000 --- a/app/market/engine_test.go +++ /dev/null @@ -1,101 +0,0 @@ -package market_test - -import ( - "testing" - - "github.com/ovrclk/akash/app/market" - "github.com/ovrclk/akash/state" - "github.com/ovrclk/akash/testutil" - "github.com/ovrclk/akash/types" - "github.com/ovrclk/akash/types/base" - "github.com/stretchr/testify/require" -) - -func TestEngine_All(t *testing.T) { - commitState, _ := testutil.NewState(t, nil) - - tenant, _ := testutil.CreateAccount(t, commitState) - - pacc, _ := testutil.CreateAccount(t, commitState) - provider := testutil.Provider(pacc.Address, 0) - require.NoError(t, commitState.Provider().Save(provider)) - - deployment := testutil.Deployment(tenant.Address, tenant.Nonce) - groups := testutil.DeploymentGroups(deployment.Address, tenant.Nonce) - require.NoError(t, commitState.Deployment().Save(deployment)) - - _, order := testCreateOrder(t, commitState, tenant, deployment, groups) - testCreateLease(t, commitState, provider, deployment, groups, order) - testCloseDeployment(t, commitState, tenant.Address, deployment.Address) -} - -func testCreateOrder(t *testing.T, state state.State, tenant *types.Account, deployment *types.Deployment, groups *types.DeploymentGroups) (state.State, *types.Order) { - for _, group := range groups.GetItems() { - require.NoError(t, state.DeploymentGroup().Save(group)) - } - - txs, err := market.NewEngine(testutil.Logger()).Run(state) - require.NoError(t, err) - - require.Len(t, txs, 1) - - tx, ok := txs[0].(*types.TxCreateOrder) - require.True(t, ok) - - require.Equal(t, deployment.Address, tx.Deployment) - require.Equal(t, groups.GetItems()[0].Seq, tx.Group) - order := &types.Order{ - OrderID: tx.OrderID, - EndAt: tx.EndAt, - State: types.Order_OPEN, - } - require.NoError(t, state.Order().Save(order)) - - return state, order -} - -func testCreateLease(t *testing.T, state state.CommitState, provider *types.Provider, deployment *types.Deployment, groups *types.DeploymentGroups, order *types.Order) state.State { - fulfillment := testutil.Fulfillment(provider.Address, deployment.Address, order.Group, order.Seq, 1) - require.NoError(t, state.Fulfillment().Save(fulfillment)) - - for i := int64(0); i <= groups.GetItems()[0].OrderTTL; i++ { - state.Commit() - } - - txs, err := market.NewEngine(testutil.Logger()).Run(state) - require.NoError(t, err) - require.Len(t, txs, 1) - - leaseTx, ok := txs[0].(*types.TxCreateLease) - lease := &types.Lease{ - LeaseID: leaseTx.LeaseID, - Price: leaseTx.Price, - State: types.Lease_ACTIVE, - } - require.True(t, ok) - require.NoError(t, state.Lease().Save(lease)) - - order.State = types.Order_MATCHED - require.NoError(t, state.Order().Save(order)) - - return state -} - -func testCloseDeployment(t *testing.T, state state.State, address base.Bytes, deployment base.Bytes) state.State { - tenant, err := state.Account().Get(address) - require.NoError(t, err) - - tenant.Balance = uint64(0) - require.NoError(t, state.Account().Save(tenant)) - - txs, err := market.NewEngine(testutil.Logger()).Run(state) - require.NoError(t, err) - require.Len(t, txs, 1) - - tx, ok := txs[0].(*types.TxCloseDeployment) - require.True(t, ok) - require.Equal(t, types.TxCloseDeployment_INSUFFICIENT, tx.Reason) - require.Equal(t, deployment, tx.Deployment) - - return state -}