github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/x/farm/types/genesis_test.go (about)

     1  //go:build ignore
     2  // +build ignore
     3  
     4  package types
     5  
     6  import (
     7  	"errors"
     8  	"testing"
     9  
    10  	"github.com/stretchr/testify/require"
    11  )
    12  
    13  func TestGenesisState(t *testing.T) {
    14  	tests := []struct {
    15  		pools     FarmPools
    16  		lockInfos []LockInfo
    17  		histories []PoolHistoricalRewardsRecord
    18  		currents  []PoolCurrentRewardsRecord
    19  		whiteList PoolNameList
    20  		params    Params
    21  		err       error
    22  	}{
    23  		{
    24  			pools:     FarmPools{FarmPool{}, FarmPool{}},
    25  			lockInfos: []LockInfo{LockInfo{}, LockInfo{}},
    26  			histories: []PoolHistoricalRewardsRecord{
    27  				PoolHistoricalRewardsRecord{Rewards: PoolHistoricalRewards{ReferenceCount: 2}},
    28  				PoolHistoricalRewardsRecord{Rewards: PoolHistoricalRewards{ReferenceCount: 2}},
    29  			},
    30  			currents: []PoolCurrentRewardsRecord{PoolCurrentRewardsRecord{}, PoolCurrentRewardsRecord{}},
    31  			err:      nil,
    32  		},
    33  		{
    34  			pools:     FarmPools{FarmPool{}, FarmPool{}},
    35  			lockInfos: []LockInfo{LockInfo{}, LockInfo{}},
    36  			histories: []PoolHistoricalRewardsRecord{
    37  				PoolHistoricalRewardsRecord{Rewards: PoolHistoricalRewards{ReferenceCount: 2}},
    38  				PoolHistoricalRewardsRecord{Rewards: PoolHistoricalRewards{ReferenceCount: 2}},
    39  			},
    40  			currents: []PoolCurrentRewardsRecord{PoolCurrentRewardsRecord{}},
    41  			err:      errors.New(""),
    42  		},
    43  		{
    44  			pools:     FarmPools{FarmPool{}, FarmPool{}},
    45  			lockInfos: []LockInfo{LockInfo{}, LockInfo{}},
    46  			histories: []PoolHistoricalRewardsRecord{
    47  				PoolHistoricalRewardsRecord{Rewards: PoolHistoricalRewards{ReferenceCount: 1}},
    48  				PoolHistoricalRewardsRecord{Rewards: PoolHistoricalRewards{ReferenceCount: 2}},
    49  			},
    50  			currents: []PoolCurrentRewardsRecord{PoolCurrentRewardsRecord{}, PoolCurrentRewardsRecord{}},
    51  			err:      errors.New(""),
    52  		},
    53  	}
    54  
    55  	for _, test := range tests {
    56  		genesis := NewGenesisState(
    57  			test.pools, test.lockInfos, test.histories, test.currents, test.whiteList, test.params,
    58  		)
    59  		if test.err != nil {
    60  			require.Error(t, ValidateGenesis(genesis))
    61  		} else {
    62  			require.NoError(t, ValidateGenesis(genesis))
    63  		}
    64  	}
    65  }