github.com/fibonacci-chain/fbc@v0.0.0-20231124064014-c7636198c1e9/libs/cosmos-sdk/x/genutil/legacy/v0_39/migrate_test.go (about)

     1  package v039_test
     2  
     3  import (
     4  	"testing"
     5  
     6  	"github.com/stretchr/testify/require"
     7  
     8  	v038auth "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/auth/legacy/v0_38"
     9  	v039auth "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/auth/legacy/v0_39"
    10  	v039 "github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/genutil/legacy/v0_39"
    11  	"github.com/fibonacci-chain/fbc/libs/cosmos-sdk/x/genutil/types"
    12  )
    13  
    14  var genAuthState = []byte(`{
    15    "params": {
    16      "max_memo_characters": "10",
    17      "tx_sig_limit": "10",
    18      "tx_size_cost_per_byte": "10",
    19      "sig_verify_cost_ed25519": "10",
    20      "sig_verify_cost_secp256k1": "10"
    21    },
    22    "accounts": [
    23      {
    24        "type": "cosmos-sdk/Account",
    25        "value": {
    26          "address": "cosmos19hz3ee9e3lj9mne4jggj3v8hxjrpre22jukj9y",
    27          "coins": [
    28            {
    29              "denom": "stake",
    30              "amount": "400000"
    31            }
    32          ],
    33          "public_key": "cosmospub1addwnpepqtezq4ajkevh724ls45zp72x70rj8mhszqf5pxcaahazm8trv490swlf404",
    34          "account_number": 1,
    35          "sequence": 1
    36        }
    37      },
    38      {
    39        "type": "cosmos-sdk/ModuleAccount",
    40        "value": {
    41          "address": "cosmos1fl48vsnmsdzcv85q5d2q4z5ajdha8yu34mf0eh",
    42          "coins": [
    43            {
    44              "denom": "stake",
    45              "amount": "400000000"
    46            }
    47          ],
    48          "public_key": "",
    49          "account_number": 2,
    50          "sequence": 4,
    51          "name": "bonded_tokens_pool",
    52          "permissions": [
    53            "burner",
    54            "staking"
    55          ]
    56        }
    57      },
    58      {
    59        "type": "cosmos-sdk/ContinuousVestingAccount",
    60        "value": {
    61          "address": "cosmos1vtzxzyjv506dvhl9pa527xsugf5gez4fnqxq0n",
    62          "coins": [
    63            {
    64              "denom": "stake",
    65              "amount": "10000205"
    66            }
    67          ],
    68          "public_key": "cosmospub1addwnpepqdxrk48q89xlmnzrr5nkssle05tkp73uknevzaavm53c02v26vlyzz6vcdh",
    69          "account_number": 3,
    70          "sequence": 5,
    71          "original_vesting": [
    72            {
    73              "denom": "stake",
    74              "amount": "10000205"
    75            }
    76          ],
    77          "delegated_free": [],
    78          "delegated_vesting": [],
    79          "end_time": 1596125048,
    80          "start_time": 1595952248
    81        }
    82      },
    83      {
    84        "type": "cosmos-sdk/DelayedVestingAccount",
    85        "value": {
    86          "address": "cosmos1prxkcqclweqa0g28p7vmf6z78ghyeckm4qak30",
    87          "coins": [
    88            {
    89              "denom": "stake",
    90              "amount": "10000205"
    91            }
    92          ],
    93          "public_key": "cosmospub1addwnpepqwewcad349e2yw3weatf8lzfyv5cd6am9jkk4ajach3f568k6gg47nls3p8",
    94          "account_number": 4,
    95          "sequence": 15,
    96          "original_vesting": [
    97            {
    98              "denom": "stake",
    99              "amount": "10000205"
   100            }
   101          ],
   102          "delegated_free": [],
   103          "delegated_vesting": [],
   104          "end_time": 1596125048
   105        }
   106      }
   107    ]
   108  }`)
   109  
   110  var expectedGenAuthState = []byte(`{"params":{"max_memo_characters":"10","tx_sig_limit":"10","tx_size_cost_per_byte":"10","sig_verify_cost_ed25519":"10","sig_verify_cost_secp256k1":"10"},"accounts":[{"type":"cosmos-sdk/Account","value":{"address":"cosmos19hz3ee9e3lj9mne4jggj3v8hxjrpre22jukj9y","coins":[{"denom":"stake","amount":"400000.000000000000000000"}],"public_key":{"type":"tendermint/PubKeySecp256k1","value":"AvIgV7K2WX8qv4VoIPlG88cj7vAQE0CbHe36LZ1jZUr4"},"account_number":"1","sequence":"1"}},{"type":"cosmos-sdk/ModuleAccount","value":{"address":"cosmos1fl48vsnmsdzcv85q5d2q4z5ajdha8yu34mf0eh","coins":[{"denom":"stake","amount":"400000000.000000000000000000"}],"public_key":"","account_number":"2","sequence":"4","name":"bonded_tokens_pool","permissions":["burner","staking"]}},{"type":"cosmos-sdk/ContinuousVestingAccount","value":{"address":"cosmos1vtzxzyjv506dvhl9pa527xsugf5gez4fnqxq0n","coins":[{"denom":"stake","amount":"10000205.000000000000000000"}],"public_key":{"type":"tendermint/PubKeySecp256k1","value":"A0w7VOA5Tf3MQx0naEP5fRdg+jy08sF3rN0jh6mK0z5B"},"account_number":"3","sequence":"5","original_vesting":[{"denom":"stake","amount":"10000205.000000000000000000"}],"delegated_free":[],"delegated_vesting":[],"end_time":"1596125048","start_time":"1595952248"}},{"type":"cosmos-sdk/DelayedVestingAccount","value":{"address":"cosmos1prxkcqclweqa0g28p7vmf6z78ghyeckm4qak30","coins":[{"denom":"stake","amount":"10000205.000000000000000000"}],"public_key":{"type":"tendermint/PubKeySecp256k1","value":"A7LsdbGpcqI6Ls9Wk/xJIymG67ssrWr2XcXimmj20hFf"},"account_number":"4","sequence":"15","original_vesting":[{"denom":"stake","amount":"10000205.000000000000000000"}],"delegated_free":[],"delegated_vesting":[],"end_time":"1596125048"}}]}`)
   111  
   112  func TestMigrate(t *testing.T) {
   113  	genesis := types.AppMap{
   114  		v038auth.ModuleName: genAuthState,
   115  	}
   116  
   117  	var migrated types.AppMap
   118  	require.NotPanics(t, func() { migrated = v039.Migrate(genesis) })
   119  	require.Equal(t, string(expectedGenAuthState), string(migrated[v039auth.ModuleName]))
   120  }