"github.com/vapor/blockchain/pseudohsm"
"github.com/vapor/blockchain/signers"
"github.com/vapor/crypto/ed25519/chainkd"
+ "github.com/vapor/database"
dbm "github.com/vapor/database/leveldb"
"github.com/vapor/event"
"github.com/vapor/protocol"
if err := generator.AddSpendInput(input.AccountAlias, input.AssetAlias, input.Amount); err != nil {
return nil, err
}
- case "issue":
- _, err := ctx.createAsset(input.AccountAlias, input.AssetAlias)
- if err != nil {
- return nil, err
- }
- if err := generator.AddIssuanceInput(input.AssetAlias, input.Amount); err != nil {
- return nil, err
- }
}
}
return nil
}
-func (ctx *walletTestContext) createAsset(accountAlias string, assetAlias string) (*asset.Asset, error) {
- acc, err := ctx.Wallet.AccountMgr.FindByAlias(accountAlias)
- if err != nil {
- return nil, err
- }
- return ctx.Wallet.AssetReg.Define(acc.XPubs, len(acc.XPubs), nil, 0, assetAlias, nil)
-}
-
func (ctx *walletTestContext) newBlock(txs []*types.Tx, coinbaseAccount string) (*types.Block, error) {
controlProgram, err := ctx.createControlProgram(coinbaseAccount, true)
if err != nil {
return err
}
walletDB := dbm.NewDB("wallet", "leveldb", path.Join(dirPath, "wallet_db"))
- accountManager := account.NewManager(walletDB, chain)
+ walletStore := database.NewWalletStore(walletDB)
+ accountStore := database.NewAccountStore(walletDB)
+ accountManager := account.NewManager(accountStore, chain)
assets := asset.NewRegistry(walletDB, chain)
dispatcher := event.NewDispatcher()
- wallet, err := w.NewWallet(walletDB, accountManager, assets, hsm, chain, dispatcher, false)
+ wallet, err := w.NewWallet(walletStore, accountManager, assets, hsm, chain, dispatcher, false)
if err != nil {
return err
}