mirror of
https://github.com/nspcc-dev/neo-go.git
synced 2025-01-20 15:08:19 +00:00
network: refactor return value from NeoFSBlockFetcher service
Signed-off-by: Ekaterina Pavlova <ekt@morphbits.io>
This commit is contained in:
parent
119ca27994
commit
14c980a685
3 changed files with 21 additions and 7 deletions
|
@ -229,7 +229,7 @@ func newServerFromConstructors(config ServerConfig, chain Ledger, stSync StateSy
|
|||
s.blockFetcher, err = blockfetcher.New(chain, s.NeoFSBlockFetcherCfg, log, s.bFetcherQueue.PutBlock, func() {
|
||||
close(s.blockFetcherFin)
|
||||
})
|
||||
if err != nil && config.NeoFSBlockFetcherCfg.Enabled {
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("failed to create NeoFS BlockFetcher: %w", err)
|
||||
}
|
||||
|
||||
|
|
|
@ -113,11 +113,13 @@ func New(chain Ledger, cfg config.NeoFSBlockFetcher, logger *zap.Logger, putBloc
|
|||
account *wallet.Account
|
||||
err error
|
||||
)
|
||||
|
||||
if !cfg.Enabled {
|
||||
return &Service{}, nil
|
||||
}
|
||||
if cfg.UnlockWallet.Path != "" {
|
||||
walletFromFile, err := wallet.NewWalletFromFile(cfg.UnlockWallet.Path)
|
||||
if err != nil {
|
||||
return &Service{}, err
|
||||
return nil, err
|
||||
}
|
||||
for _, acc := range walletFromFile.Accounts {
|
||||
if err := acc.Decrypt(cfg.UnlockWallet.Password, walletFromFile.Scrypt); err == nil {
|
||||
|
@ -126,12 +128,12 @@ func New(chain Ledger, cfg config.NeoFSBlockFetcher, logger *zap.Logger, putBloc
|
|||
}
|
||||
}
|
||||
if account == nil {
|
||||
return &Service{}, errors.New("failed to decrypt any account in the wallet")
|
||||
return nil, errors.New("failed to decrypt any account in the wallet")
|
||||
}
|
||||
} else {
|
||||
account, err = wallet.NewAccount()
|
||||
if err != nil {
|
||||
return &Service{}, err
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
if cfg.Timeout <= 0 {
|
||||
|
@ -144,7 +146,7 @@ func New(chain Ledger, cfg config.NeoFSBlockFetcher, logger *zap.Logger, putBloc
|
|||
cfg.DownloaderWorkersCount = defaultDownloaderWorkersCount
|
||||
}
|
||||
if len(cfg.Addresses) == 0 {
|
||||
return &Service{}, errors.New("no addresses provided")
|
||||
return nil, errors.New("no addresses provided")
|
||||
}
|
||||
|
||||
params := pool.DefaultOptions()
|
||||
|
@ -153,7 +155,7 @@ func New(chain Ledger, cfg config.NeoFSBlockFetcher, logger *zap.Logger, putBloc
|
|||
params.SetNodeStreamTimeout(defaultStreamTimeout)
|
||||
p, err := pool.New(pool.NewFlatNodeParams(cfg.Addresses), user.NewAutoIDSignerRFC6979(account.PrivateKey().PrivateKey), params)
|
||||
if err != nil {
|
||||
return &Service{}, err
|
||||
return nil, err
|
||||
}
|
||||
return &Service{
|
||||
chain: chain,
|
||||
|
|
|
@ -38,6 +38,9 @@ func TestServiceConstructor(t *testing.T) {
|
|||
|
||||
t.Run("empty configuration", func(t *testing.T) {
|
||||
cfg := config.NeoFSBlockFetcher{
|
||||
InternalService: config.InternalService{
|
||||
Enabled: true,
|
||||
},
|
||||
Timeout: 0,
|
||||
OIDBatchSize: 0,
|
||||
DownloaderWorkersCount: 0,
|
||||
|
@ -48,6 +51,9 @@ func TestServiceConstructor(t *testing.T) {
|
|||
|
||||
t.Run("no addresses", func(t *testing.T) {
|
||||
cfg := config.NeoFSBlockFetcher{
|
||||
InternalService: config.InternalService{
|
||||
Enabled: true,
|
||||
},
|
||||
Addresses: []string{},
|
||||
}
|
||||
_, err := New(ledger, cfg, logger, mockPut.putBlock, shutdownCallback)
|
||||
|
@ -56,6 +62,9 @@ func TestServiceConstructor(t *testing.T) {
|
|||
|
||||
t.Run("default values", func(t *testing.T) {
|
||||
cfg := config.NeoFSBlockFetcher{
|
||||
InternalService: config.InternalService{
|
||||
Enabled: true,
|
||||
},
|
||||
Addresses: []string{"localhost:8080"},
|
||||
}
|
||||
service, err := New(ledger, cfg, logger, mockPut.putBlock, shutdownCallback)
|
||||
|
@ -71,6 +80,9 @@ func TestServiceConstructor(t *testing.T) {
|
|||
|
||||
t.Run("SDK client", func(t *testing.T) {
|
||||
cfg := config.NeoFSBlockFetcher{
|
||||
InternalService: config.InternalService{
|
||||
Enabled: true,
|
||||
},
|
||||
Addresses: []string{"localhost:8080"},
|
||||
}
|
||||
service, err := New(ledger, cfg, logger, mockPut.putBlock, shutdownCallback)
|
||||
|
|
Loading…
Reference in a new issue