MCPcopy Create free account
hub / github.com/hyperledger/fabric / invokeAndQueryKVExecutorChaincode

Function invokeAndQueryKVExecutorChaincode

integration/ledger/snapshot_test.go:878–916  ·  view source on GitHub ↗
(n *nwo.Network, orderer *nwo.Orderer, channelID string, chaincode nwo.Chaincode, kvdata []kvexecutor.KVData, peers ...*nwo.Peer)

Source from the content-addressed store, hash-verified

876}
877
878func invokeAndQueryKVExecutorChaincode(n *nwo.Network, orderer *nwo.Orderer, channelID string, chaincode nwo.Chaincode, kvdata []kvexecutor.KVData, peers ...*nwo.Peer) {
879 By("invoking kvexecutor chaincode")
880 writeInputBytes, err := json.Marshal(kvdata)
881 Expect(err).NotTo(HaveOccurred())
882 writeInputBase64 := base64.StdEncoding.EncodeToString(writeInputBytes)
883
884 peerAddresses := make([]string, 0)
885 for _, peer := range peers {
886 peerAddresses = append(peerAddresses, n.PeerAddress(peer, nwo.ListenPort))
887 }
888
889 invokeCommand := commands.ChaincodeInvoke{
890 ChannelID: channelID,
891 Orderer: n.OrdererAddress(orderer, nwo.ListenPort),
892 Name: chaincode.Name,
893 Ctor: fmt.Sprintf(`{"Args":["readWriteKVs","%s","%s"]}`, "", writeInputBase64),
894 PeerAddresses: peerAddresses,
895 WaitForEvent: true,
896 }
897 invokeChaincode(n, peers[0], invokeCommand)
898
899 channelPeers := n.PeersWithChannel(channelID)
900 nwo.WaitUntilEqualLedgerHeight(n, channelID, nwo.GetLedgerHeight(n, peers[0], channelID), channelPeers...)
901
902 By("querying kvexecutor chaincode")
903 expectedMsg, err := json.Marshal(kvdata)
904 Expect(err).NotTo(HaveOccurred())
905
906 readInputBytes, err := json.Marshal(kvdata)
907 Expect(err).NotTo(HaveOccurred())
908 readInputBase64 := base64.StdEncoding.EncodeToString(readInputBytes)
909
910 querycommand := commands.ChaincodeQuery{
911 ChannelID: channelID,
912 Name: chaincode.Name,
913 Ctor: fmt.Sprintf(`{"Args":["readWriteKVs","%s","%s"]}`, readInputBase64, ""),
914 }
915 queryChaincode(n, peers[0], querycommand, string(expectedMsg), true)
916}
917
918func invokeChaincode(n *nwo.Network, peer *nwo.Peer, command commands.ChaincodeInvoke) {
919 sess, err := n.PeerUserSession(peer, "User1", command)

Callers 1

snapshot_test.goFile · 0.85

Calls 8

GetLedgerHeightFunction · 0.92
PeerAddressMethod · 0.80
OrdererAddressMethod · 0.80
PeersWithChannelMethod · 0.80
invokeChaincodeFunction · 0.70
queryChaincodeFunction · 0.70
MarshalMethod · 0.65

Tested by

no test coverage detected