Exemplo n.º 1
0
		It("should not commit batch with an incorrect ID", func() {
			uuid := util.GenerateUUID()
			tx, err := protos.NewTransaction(protos.ChaincodeID{Path: "testUrl"}, uuid, "anyfunction", []string{"param1, param2"})
			Expect(err).To(BeNil())
			err = ledgerPtr.CommitTxBatch(2, []*protos.Transaction{tx}, nil, []byte("proof"))
			Expect(err).ToNot(BeNil())
		})
		It("should get TX Batch Preview info and commit the batch and validate they are equal", func() {
			uuid := util.GenerateUUID()
			tx, err := protos.NewTransaction(protos.ChaincodeID{Path: "testUrl"}, uuid, "anyfunction", []string{"param1, param2"})
			Expect(err).To(BeNil())
			previewBlockInfo, err := ledgerPtr.GetTXBatchPreviewBlockInfo(1, []*protos.Transaction{tx}, []byte("proof"))
			Expect(err).To(BeNil())
			err = ledgerPtr.CommitTxBatch(1, []*protos.Transaction{tx}, nil, []byte("proof"))
			Expect(err).To(BeNil())
			commitedBlockInfo, err := ledgerPtr.GetBlockchainInfo()
			Expect(err).To(BeNil())
			Expect(previewBlockInfo).To(Equal(commitedBlockInfo))
		})
		It("can get a transaction by it's UUID", func() {
			uuid := util.GenerateUUID()
			tx, err := protos.NewTransaction(protos.ChaincodeID{Path: "testUrl"}, uuid, "anyfunction", []string{"param1, param2"})
			Expect(err).To(BeNil())
			err = ledgerPtr.CommitTxBatch(1, []*protos.Transaction{tx}, nil, []byte("proof"))
			Expect(err).To(BeNil())

			ledgerTransaction, err := ledgerPtr.GetTransactionByUUID(uuid)
			Expect(err).To(BeNil())
			Expect(tx).To(Equal(ledgerTransaction))
			state, _ := ledgerPtr.GetState("chaincode1", "key1", true)
			Expect(state).To(Equal([]byte("value1")))