Skip to content

Commit 7c24f8c

Browse files
refactor(fabric): remove import of rwsetutil
This commit moves the rwsetutils imported from fabric into a local package, including tests. Signed-off-by: Marcus Brandenburger <bur@zurich.ibm.com>
1 parent 38e5571 commit 7c24f8c

File tree

12 files changed

+1951
-3
lines changed

12 files changed

+1951
-3
lines changed

platform/fabric/core/generic/fabricutils/pr.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,9 @@ SPDX-License-Identifier: Apache-2.0
77
package fabricutils
88

99
import (
10+
"github.com/hyperledger-labs/fabric-smart-client/platform/fabric/core/generic/ledger/kvledger/rwsetutil"
1011
"github.com/hyperledger-labs/fabric-smart-client/platform/fabric/protoutil"
1112
pb "github.com/hyperledger/fabric-protos-go-apiv2/peer"
12-
"github.com/hyperledger/fabric/core/ledger/kvledger/txmgmt/rwsetutil"
1313
)
1414

1515
// UnpackedProposalResponse contains the interesting artifacts from inside the proposal.
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
/*
2+
Copyright IBM Corp. All Rights Reserved.
3+
4+
SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
package rwsetutil
8+
9+
import "github.com/hyperledger/fabric-protos-go-apiv2/ledger/rwset/kvrwset"
10+
11+
// SetRawReads sets the 'readsInfo' field to raw KVReads performed by the query
12+
func SetRawReads(rqi *kvrwset.RangeQueryInfo, kvReads []*kvrwset.KVRead) {
13+
rqi.ReadsInfo = &kvrwset.RangeQueryInfo_RawReads{
14+
RawReads: &kvrwset.QueryReads{
15+
KvReads: kvReads,
16+
},
17+
}
18+
}
19+
20+
// SetMerkelSummary sets the 'readsInfo' field to merkle summary of the raw KVReads of query results
21+
func SetMerkelSummary(rqi *kvrwset.RangeQueryInfo, merkleSummary *kvrwset.QueryReadsMerkleSummary) {
22+
rqi.ReadsInfo = &kvrwset.RangeQueryInfo_ReadsMerkleHashes{ReadsMerkleHashes: merkleSummary}
23+
}
Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,44 @@
1+
/*
2+
Copyright IBM Corp. All Rights Reserved.
3+
4+
SPDX-License-Identifier: Apache-2.0
5+
*/
6+
7+
package rwsetutil
8+
9+
import (
10+
"testing"
11+
12+
"github.com/hyperledger/fabric-protos-go-apiv2/ledger/rwset/kvrwset"
13+
"github.com/stretchr/testify/require"
14+
)
15+
16+
func TestSetRawReads(t *testing.T) {
17+
rqi := &kvrwset.RangeQueryInfo{StartKey: "start", EndKey: "end"}
18+
kvReads := []*kvrwset.KVRead{{Key: "key1"}, {Key: "key2"}}
19+
20+
expected := &kvrwset.RangeQueryInfo{
21+
StartKey: "start",
22+
EndKey: "end",
23+
ReadsInfo: &kvrwset.RangeQueryInfo_RawReads{
24+
RawReads: &kvrwset.QueryReads{KvReads: kvReads},
25+
},
26+
}
27+
28+
SetRawReads(rqi, kvReads)
29+
require.Equal(t, expected, rqi)
30+
}
31+
32+
func TestSetMerkelSummary(t *testing.T) {
33+
rqi := &kvrwset.RangeQueryInfo{StartKey: "start", EndKey: "end"}
34+
merkleSummary := &kvrwset.QueryReadsMerkleSummary{MaxDegree: 12, MaxLevel: 99}
35+
36+
expected := &kvrwset.RangeQueryInfo{
37+
StartKey: "start",
38+
EndKey: "end",
39+
ReadsInfo: &kvrwset.RangeQueryInfo_ReadsMerkleHashes{ReadsMerkleHashes: merkleSummary},
40+
}
41+
42+
SetMerkelSummary(rqi, merkleSummary)
43+
require.Equal(t, expected, rqi)
44+
}

0 commit comments

Comments
 (0)