2
0
mirror of https://github.com/lightninglabs/loop synced 2024-11-08 01:10:29 +00:00
loop/test/signer_mock.go

40 lines
924 B
Go
Raw Normal View History

2019-03-06 20:13:50 +00:00
package test
import (
2019-12-09 15:47:23 +00:00
"bytes"
2019-03-06 20:13:50 +00:00
"context"
"github.com/btcsuite/btcd/wire"
"github.com/lightningnetwork/lnd/input"
2019-12-09 15:34:02 +00:00
"github.com/lightningnetwork/lnd/keychain"
2019-03-06 20:13:50 +00:00
)
type mockSigner struct {
2019-12-09 15:34:02 +00:00
lnd *LndMockServices
2019-03-06 20:13:50 +00:00
}
func (s *mockSigner) SignOutputRaw(ctx context.Context, tx *wire.MsgTx,
signDescriptors []*input.SignDescriptor) ([][]byte, error) {
rawSigs := [][]byte{{1, 2, 3}}
return rawSigs, nil
}
2019-12-09 15:34:02 +00:00
func (s *mockSigner) SignMessage(ctx context.Context, msg []byte,
locator keychain.KeyLocator) ([]byte, error) {
return s.lnd.Signature, nil
}
2019-12-09 15:47:23 +00:00
func (s *mockSigner) VerifyMessage(ctx context.Context, msg, sig []byte,
pubkey [33]byte) (bool, error) {
// Make the mock somewhat functional by asserting that the message and
// signature is what we expect from the mock parameters.
mockAssertion := bytes.Equal(msg, []byte(s.lnd.SignatureMsg)) &&
bytes.Equal(sig, s.lnd.Signature)
return mockAssertion, nil
}