github.com/gnolang/gno@v0.0.0-20240520182011-228e9d0192ce/tm2/pkg/bft/rpc/core/mock_test.go (about)

     1  package core
     2  
     3  import "github.com/gnolang/gno/tm2/pkg/bft/types"
     4  
     5  type (
     6  	heightDelegate          func() int64
     7  	loadBlockMetaDelegate   func(int64) *types.BlockMeta
     8  	loadBlockDelegate       func(int64) *types.Block
     9  	loadBlockPartDelegate   func(int64, int) *types.Part
    10  	loadBlockCommitDelegate func(int64) *types.Commit
    11  	loadSeenCommitDelegate  func(int64) *types.Commit
    12  
    13  	saveBlockDelegate func(*types.Block, *types.PartSet, *types.Commit)
    14  )
    15  
    16  type mockBlockStore struct {
    17  	heightFn          heightDelegate
    18  	loadBlockMetaFn   loadBlockMetaDelegate
    19  	loadBlockFn       loadBlockDelegate
    20  	loadBlockPartFn   loadBlockPartDelegate
    21  	loadBlockCommitFn loadBlockCommitDelegate
    22  	loadSeenCommitFn  loadSeenCommitDelegate
    23  	saveBlockFn       saveBlockDelegate
    24  }
    25  
    26  func (m *mockBlockStore) Height() int64 {
    27  	if m.heightFn != nil {
    28  		return m.heightFn()
    29  	}
    30  
    31  	return 0
    32  }
    33  
    34  func (m *mockBlockStore) LoadBlockMeta(height int64) *types.BlockMeta {
    35  	if m.loadBlockMetaFn != nil {
    36  		return m.loadBlockMetaFn(height)
    37  	}
    38  
    39  	return nil
    40  }
    41  
    42  func (m *mockBlockStore) LoadBlock(height int64) *types.Block {
    43  	if m.loadBlockFn != nil {
    44  		return m.loadBlockFn(height)
    45  	}
    46  
    47  	return nil
    48  }
    49  
    50  func (m *mockBlockStore) LoadBlockPart(height int64, index int) *types.Part {
    51  	if m.loadBlockPartFn != nil {
    52  		return m.loadBlockPartFn(height, index)
    53  	}
    54  
    55  	return nil
    56  }
    57  
    58  func (m *mockBlockStore) LoadBlockCommit(height int64) *types.Commit {
    59  	if m.loadBlockCommitFn != nil {
    60  		return m.loadBlockCommitFn(height)
    61  	}
    62  
    63  	return nil
    64  }
    65  
    66  func (m *mockBlockStore) LoadSeenCommit(height int64) *types.Commit {
    67  	if m.loadSeenCommitFn != nil {
    68  		return m.loadSeenCommitFn(height)
    69  	}
    70  
    71  	return nil
    72  }
    73  
    74  func (m *mockBlockStore) SaveBlock(block *types.Block, blockParts *types.PartSet, seenCommit *types.Commit) {
    75  	if m.saveBlockFn != nil {
    76  		m.saveBlockFn(block, blockParts, seenCommit)
    77  	}
    78  }