github.com/lzy4123/fabric@v2.1.1+incompatible/internal/peer/common/mockclient.go (about) 1 /* 2 Copyright IBM Corp. 2016 All Rights Reserved. 3 4 SPDX-License-Identifier: Apache-2.0 5 */ 6 7 package common 8 9 import ( 10 "context" 11 12 cb "github.com/hyperledger/fabric-protos-go/common" 13 pb "github.com/hyperledger/fabric-protos-go/peer" 14 grpc "google.golang.org/grpc" 15 ) 16 17 // GetMockEndorserClient return a endorser client return specified ProposalResponse and err(nil or error) 18 func GetMockEndorserClient(response *pb.ProposalResponse, err error) pb.EndorserClient { 19 return &mockEndorserClient{ 20 response: response, 21 err: err, 22 } 23 } 24 25 type mockEndorserClient struct { 26 response *pb.ProposalResponse 27 err error 28 } 29 30 func (m *mockEndorserClient) ProcessProposal(ctx context.Context, in *pb.SignedProposal, opts ...grpc.CallOption) (*pb.ProposalResponse, error) { 31 return m.response, m.err 32 } 33 34 func GetMockBroadcastClient(err error) BroadcastClient { 35 return &mockBroadcastClient{err: err} 36 } 37 38 // mockBroadcastClient return success immediately 39 type mockBroadcastClient struct { 40 err error 41 } 42 43 func (m *mockBroadcastClient) Send(env *cb.Envelope) error { 44 return m.err 45 } 46 47 func (m *mockBroadcastClient) Close() error { 48 return nil 49 }