(t *testing.T)
| 915 | } |
| 916 | |
| 917 | func TestKeeper_InterestRateComputation(t *testing.T) { |
| 918 | interestRateComputationTests := []struct { |
| 919 | name string |
| 920 | denom string |
| 921 | decimals int64 |
| 922 | interestRate sdk.Dec |
| 923 | interestRateIncrease sdk.Dec |
| 924 | interestRateDecrease sdk.Dec |
| 925 | interestRateMax sdk.Dec |
| 926 | err error |
| 927 | errString error |
| 928 | }{ |
| 929 | { |
| 930 | name: "interest rate change lesser than decrease and increase", |
| 931 | denom: "unregistred_denom", |
| 932 | decimals: 18, |
| 933 | interestRate: sdk.NewDec(1), |
| 934 | interestRateIncrease: sdk.NewDec(1), |
| 935 | interestRateDecrease: sdk.NewDec(1), |
| 936 | interestRateMax: sdk.NewDec(5), |
| 937 | err: nil, |
| 938 | }, |
| 939 | { |
| 940 | name: "interest rate change greater than increase", |
| 941 | denom: "unregistred_denom", |
| 942 | decimals: 18, |
| 943 | interestRate: sdk.NewDec(10), |
| 944 | interestRateIncrease: sdk.NewDec(1), |
| 945 | interestRateDecrease: sdk.NewDec(1), |
| 946 | interestRateMax: sdk.NewDec(5), |
| 947 | err: nil, |
| 948 | }, |
| 949 | { |
| 950 | name: "interest rate greater than rate max", |
| 951 | denom: "unregistred_denom", |
| 952 | decimals: 18, |
| 953 | interestRate: sdk.NewDec(10), |
| 954 | interestRateIncrease: sdk.NewDec(1), |
| 955 | interestRateDecrease: sdk.NewDec(1), |
| 956 | interestRateMax: sdk.NewDec(0), |
| 957 | err: nil, |
| 958 | }, |
| 959 | } |
| 960 | |
| 961 | for _, tt := range interestRateComputationTests { |
| 962 | tt := tt |
| 963 | t.Run(tt.name, func(t *testing.T) { |
| 964 | ctx, app, marginKeeper := initKeeper(t) |
| 965 | |
| 966 | app.TokenRegistryKeeper.SetToken(ctx, &tokenregistrytypes.RegistryEntry{ |
| 967 | Denom: tt.denom, |
| 968 | Decimals: tt.decimals, |
| 969 | Permissions: []tokenregistrytypes.Permission{tokenregistrytypes.Permission_CLP}, |
| 970 | }) |
| 971 | |
| 972 | data := types.GenesisState{Params: &types.Params{ |
| 973 | LeverageMax: sdk.NewDec(10), |
| 974 | InterestRateMax: tt.interestRateMax, |
nothing calls this directly
no test coverage detected