}) It("should retrieve a delta state hash array of length 1", func() { _, txDeltaHashes, err := ledgerPtr.GetTempStateHashWithTxDeltaStateHashes() Expect(err).To(BeNil()) Expect(len(txDeltaHashes)).To(Equal(1)) }) }) Describe("Ledger PutRawBlock", func() { ledgerPtr := InitSpec() block := new(protos.Block) block.PreviousBlockHash = []byte("foo") block.StateHash = []byte("bar") It("creates a raw block and puts it in the ledger without error", func() { Expect(ledgerPtr.PutRawBlock(block, 4)).To(BeNil()) }) It("should return the same block that was stored", func() { Expect(ledgerPtr.GetBlockByNumber(4)).To(Equal(block)) }) It("creates, populates and finishes a transaction", func() { Expect(ledgerPtr.BeginTxBatch(1)).To(BeNil()) ledgerPtr.TxBegin("txUuid") Expect(ledgerPtr.SetState("chaincode1", "key1", []byte("value1"))).To(BeNil()) ledgerPtr.TxFinished("txUuid", true) }) It("should commit the batch", 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"))