github.com/yimialmonte/fabric@v2.1.1+incompatible/core/ledger/pkg_test.go (about)

     1  /*
     2  Copyright IBM Corp. All Rights Reserved.
     3  
     4  SPDX-License-Identifier: Apache-2.0
     5  */
     6  package ledger
     7  
     8  import (
     9  	"testing"
    10  
    11  	"github.com/hyperledger/fabric-protos-go/ledger/rwset"
    12  	"github.com/stretchr/testify/assert"
    13  )
    14  
    15  func TestTxPvtData(t *testing.T) {
    16  	txPvtData := &TxPvtData{}
    17  	assert.False(t, txPvtData.Has("ns", "coll"))
    18  
    19  	txPvtData.WriteSet = &rwset.TxPvtReadWriteSet{
    20  		DataModel: rwset.TxReadWriteSet_KV,
    21  		NsPvtRwset: []*rwset.NsPvtReadWriteSet{
    22  			{
    23  				Namespace: "ns",
    24  				CollectionPvtRwset: []*rwset.CollectionPvtReadWriteSet{
    25  					{
    26  						CollectionName: "coll-1",
    27  						Rwset:          []byte("RandomBytes-PvtRWSet-ns1-coll1"),
    28  					},
    29  					{
    30  						CollectionName: "coll-2",
    31  						Rwset:          []byte("RandomBytes-PvtRWSet-ns1-coll2"),
    32  					},
    33  				},
    34  			},
    35  		},
    36  	}
    37  
    38  	assert.True(t, txPvtData.Has("ns", "coll-1"))
    39  	assert.True(t, txPvtData.Has("ns", "coll-2"))
    40  	assert.False(t, txPvtData.Has("ns", "coll-3"))
    41  	assert.False(t, txPvtData.Has("ns1", "coll-1"))
    42  }
    43  
    44  func TestPvtNsCollFilter(t *testing.T) {
    45  	filter := NewPvtNsCollFilter()
    46  	filter.Add("ns", "coll-1")
    47  	filter.Add("ns", "coll-2")
    48  	assert.True(t, filter.Has("ns", "coll-1"))
    49  	assert.True(t, filter.Has("ns", "coll-2"))
    50  	assert.False(t, filter.Has("ns", "coll-3"))
    51  	assert.False(t, filter.Has("ns1", "coll-3"))
    52  }