func WithSettlementsSentFunc(f func() (map[string]*big.Int, error)) Option {
	return optionFunc(func(s *Service) {
		s.settlementsSentFunc = f
	})
}
WithsettlementsFunc sets the mock settlements function
package mock
import (
	"context"
	"math/big"
	"github.com/ethereum/go-ethereum/common"
	"github.com/ethsana/sana/pkg/settlement/swap"
	"github.com/ethsana/sana/pkg/settlement/swap/chequebook"
	"github.com/ethsana/sana/pkg/settlement/swap/swapprotocol"
	"github.com/ethsana/sana/pkg/swarm"
)
type Service struct {
	settlementsSent map[string]*big.Int
	settlementsRecv map[string]*big.Int
	settlementSentFunc func(swarm.Address) (*big.Int, error)
	settlementRecvFunc func(swarm.Address) (*big.Int, error)
	settlementsSentFunc func() (map[string]*big.Int, error)
	settlementsRecvFunc func() (map[string]*big.Int, error)
	deductionByPeers  map[string]struct{}
	deductionForPeers map[string]struct{}
	receiveChequeFunc   func(context.Context, swarm.Address, *chequebook.SignedCheque, *big.Int, *big.Int) error
	payFunc             func(context.Context, swarm.Address, *big.Int)
	handshakeFunc       func(swarm.Address, common.Address) error
	lastSentChequeFunc  func(swarm.Address) (*chequebook.SignedCheque, error)
	lastSentChequesFunc func() (map[string]*chequebook.SignedCheque, error)
	lastReceivedChequeFunc  func(swarm.Address) (*chequebook.SignedCheque, error)
	lastReceivedChequesFunc func() (map[string]*chequebook.SignedCheque, error)
	cashChequeFunc    func(ctx context.Context, peer swarm.Address) (common.Hash, error)
	cashoutStatusFunc func(ctx context.Context, peer swarm.Address) (*chequebook.CashoutStatus, error)
}
func WithSettlementSentFunc(f func(swarm.Address) (*big.Int, error)) Option {
	return optionFunc(func(s *Service) {
		s.settlementSentFunc = f
	})
}
func WithSettlementRecvFunc(f func(swarm.Address) (*big.Int, error)) Option {
	return optionFunc(func(s *Service) {
		s.settlementRecvFunc = f
	})
}