From e52b1ff5a644ff028eab280df192b34f93423ecc Mon Sep 17 00:00:00 2001 From: Oliver Gugger Date: Tue, 21 Dec 2021 14:35:33 +0100 Subject: [PATCH] rpcserver+order: make batch version configurable --- order/manager.go | 6 +++++- order/manager_test.go | 15 +++++++++------ rpcserver.go | 3 +++ 3 files changed, 17 insertions(+), 7 deletions(-) diff --git a/order/manager.go b/order/manager.go index 818f28f..b608d88 100644 --- a/order/manager.go +++ b/order/manager.go @@ -79,6 +79,10 @@ type ManagerConfig struct { // Signer is used to sign orders before submitting them to the server. Signer lndclient.SignerClient + + // BatchVersion is the batch version that we should use to verify new + // batches against. + BatchVersion BatchVersion } // manager is responsible for the management of orders. @@ -138,7 +142,7 @@ func (m *manager) Start() error { getAccount: m.cfg.AcctStore.Account, wallet: m.cfg.Wallet, ourNodePubkey: m.ourNodeInfo.IdentityPubkey, - version: CurrentBatchVersion, + version: m.cfg.BatchVersion, } m.batchSigner = &batchSigner{ getAccount: m.cfg.AcctStore.Account, diff --git a/order/manager_test.go b/order/manager_test.go index eb0f010..ded7e79 100644 --- a/order/manager_test.go +++ b/order/manager_test.go @@ -24,7 +24,8 @@ func TestValidateOrderAccountIsolation(t *testing.T) { orderStore := newMockStore() orderManager := NewManager(&ManagerConfig{ - Store: orderStore, + Store: orderStore, + BatchVersion: CurrentBatchVersion, }) // We'll now create two accounts, one that's 1 BTC in size, while the @@ -109,7 +110,8 @@ func TestValidateOrder(t *testing.T) { orderStore := newMockStore() orderManager := NewManager(&ManagerConfig{ - Store: orderStore, + Store: orderStore, + BatchVersion: CurrentBatchVersion, }) // We'll now create an account with sufficient size. @@ -266,10 +268,11 @@ func TestPrepareOrderSidecarTicket(t *testing.T) { mockLightning := test.NewMockLightning() mockSigner := test.NewMockSigner() mgr := NewManager(&ManagerConfig{ - AcctStore: &mockAccountStore{}, - Wallet: test.NewMockWalletKit(), - Lightning: mockLightning, - Signer: mockSigner, + AcctStore: &mockAccountStore{}, + Wallet: test.NewMockWalletKit(), + Lightning: mockLightning, + Signer: mockSigner, + BatchVersion: CurrentBatchVersion, }) require.NoError(t, mgr.Start()) defer mgr.Stop() diff --git a/rpcserver.go b/rpcserver.go index 05c19cc..956aa11 100644 --- a/rpcserver.go +++ b/rpcserver.go @@ -117,6 +117,9 @@ func newRPCServer(server *Server) *rpcServer { Lightning: lndServices.Client, Wallet: lndServices.WalletKit, Signer: lndServices.Signer, + BatchVersion: order.BatchVersion( + server.cfg.DebugConfig.BatchVersion, + ), }), marshaler: NewMarshaler(&marshalerConfig{ GetOrders: server.db.GetOrders,