github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/cosmos-sdk/server/mock/helpers.go (about)

     1  package mock
     2  
     3  import (
     4  	"fmt"
     5  	"io/ioutil"
     6  	"os"
     7  
     8  	abci "github.com/fibonacci-chain/fbc/libs/tendermint/abci/types"
     9  	"github.com/fibonacci-chain/fbc/libs/tendermint/libs/log"
    10  )
    11  
    12  // SetupApp returns an application as well as a clean-up function
    13  // to be used to quickly setup a test case with an app
    14  func SetupApp() (abci.Application, func(), error) {
    15  	logger := log.NewTMLogger(log.NewSyncWriter(os.Stdout)).
    16  		With("module", "mock")
    17  	rootDir, err := ioutil.TempDir("", "mock-sdk")
    18  	if err != nil {
    19  		return nil, nil, err
    20  	}
    21  
    22  	cleanup := func() {
    23  		err := os.RemoveAll(rootDir)
    24  		if err != nil {
    25  			fmt.Printf("could not delete %s, had error %s\n", rootDir, err.Error())
    26  		}
    27  	}
    28  
    29  	app, err := NewApp(rootDir, logger)
    30  	return app, cleanup, err
    31  }