decred.org/dcrwallet/v3@v3.1.0/wallet/setup_test.go (about) 1 // Copyright (c) 2018 The Decred developers 2 // Use of this source code is governed by an ISC 3 // license that can be found in the LICENSE file. 4 5 package wallet 6 7 import ( 8 "context" 9 "os" 10 "testing" 11 12 _ "decred.org/dcrwallet/v3/wallet/drivers/bdb" 13 "decred.org/dcrwallet/v3/wallet/walletdb" 14 "github.com/decred/dcrd/chaincfg/v3" 15 "github.com/decred/dcrd/dcrutil/v4" 16 ) 17 18 var basicWalletConfig = Config{ 19 PubPassphrase: []byte(InsecurePubPassphrase), 20 GapLimit: 20, 21 RelayFee: dcrutil.Amount(1e5), 22 Params: chaincfg.SimNetParams(), 23 } 24 25 func testWallet(ctx context.Context, t *testing.T, cfg *Config) (w *Wallet, teardown func()) { 26 f, err := os.CreateTemp("", "dcrwallet.testdb") 27 if err != nil { 28 t.Fatal(err) 29 } 30 f.Close() 31 db, err := walletdb.Create("bdb", f.Name()) 32 if err != nil { 33 t.Fatal(err) 34 } 35 rm := func() { 36 db.Close() 37 os.Remove(f.Name()) 38 } 39 err = Create(ctx, opaqueDB{db}, []byte(InsecurePubPassphrase), []byte("private"), nil, cfg.Params) 40 if err != nil { 41 rm() 42 t.Fatal(err) 43 } 44 cfg.DB = opaqueDB{db} 45 w, err = Open(ctx, cfg) 46 if err != nil { 47 rm() 48 t.Fatal(err) 49 } 50 teardown = func() { 51 rm() 52 } 53 return 54 }