lntest: create GenBaseDir to generate the base dir

This commit is contained in:
yyforyongyu
2025-06-13 16:05:33 +08:00
parent 5ebb29309e
commit 0d20e96e96
2 changed files with 20 additions and 11 deletions

View File

@ -223,6 +223,23 @@ func (cfg *BaseNodeConfig) BaseConfig() *BaseNodeConfig {
return cfg
}
// GenBaseDir creates a base dir that's used for the test.
func (cfg *BaseNodeConfig) GenBaseDir() error {
if cfg.BaseDir == "" {
var err error
// Create a temporary directory for the node's data and logs.
// Use dash suffix as a separator between base name and random
// suffix.
dirBaseName := fmt.Sprintf("lndtest-node-%s-", cfg.Name)
cfg.BaseDir, err = os.MkdirTemp("", dirBaseName)
return err
}
return nil
}
// GenArgs generates a slice of command line arguments from the lightning node
// config struct.
func (cfg *BaseNodeConfig) GenArgs() []string {

View File

@ -93,18 +93,10 @@ type HarnessNode struct {
// NewHarnessNode creates a new test lightning node instance from the passed
// config.
func NewHarnessNode(t *testing.T, cfg *BaseNodeConfig) (*HarnessNode, error) {
if cfg.BaseDir == "" {
var err error
// Create a temporary directory for the node's data and logs.
// Use dash suffix as a separator between base name and random
// suffix.
dirBaseName := fmt.Sprintf("lndtest-node-%s-", cfg.Name)
cfg.BaseDir, err = os.MkdirTemp("", dirBaseName)
if err != nil {
return nil, err
}
if err := cfg.GenBaseDir(); err != nil {
return nil, err
}
cfg.DataDir = filepath.Join(cfg.BaseDir, "data")
cfg.LogDir = filepath.Join(cfg.BaseDir, "logs")
cfg.TLSCertPath = filepath.Join(cfg.BaseDir, "tls.cert")