rust: Fix args in tests to more realistic values, ts: expose args, update idl

Signed-off-by: microwavedcola1 <microwavedcola@gmail.com>
This commit is contained in:
microwavedcola1 2022-04-09 17:09:06 +02:00
parent 57d9de86c8
commit 5ab48fb6e0
4 changed files with 180 additions and 10 deletions

View File

@ -72,10 +72,10 @@ impl<'a> GroupWithTokensConfig<'a> {
RegisterTokenInstruction {
token_index,
decimals: mint.decimals,
util0: 0.50,
rate0: 0.06,
util1: 0.70,
rate1: 1.3,
util0: 0.40,
rate0: 0.07,
util1: 0.80,
rate1: 0.9,
max_rate: 1.50,
maint_asset_weight: 0.8,
init_asset_weight: 0.6,

View File

@ -76,15 +76,30 @@ export class MangoClient {
mintPk: PublicKey,
oraclePk: PublicKey,
tokenIndex: number,
util0: number,
rate0: number,
util1: number,
rate1: number,
maxRate: number,
maintAssetWeight: number,
initAssetWeight: number,
maintLiabWeight: number,
initLiabWeight: number,
liquidationFee: number,
): Promise<TransactionSignature> {
return await this.program.methods
.registerToken(
tokenIndex,
0.8,
0.6,
1.2,
1.4,
0.02 /*TODO expose as args*/,
util0,
rate0,
util1,
rate1,
maxRate,
maintAssetWeight,
initAssetWeight,
maintLiabWeight,
initLiabWeight,
liquidationFee,
)
.accounts({
group: group.publicKey,

View File

@ -42,7 +42,22 @@ async function main() {
const btcDevnetMint = new PublicKey(DEVNET_MINTS.get('BTC')!);
const btcDevnetOracle = new PublicKey(DEVNET_ORACLES.get('BTC')!);
try {
await client.registerToken(group, btcDevnetMint, btcDevnetOracle, 0);
await client.registerToken(
group,
btcDevnetMint,
btcDevnetOracle,
0,
0.4,
0.07,
0.8,
0.9,
1.5,
0.8,
0.6,
1.2,
1.4,
0.02,
);
} catch (error) {}
// stub oracle + register token 1
@ -58,6 +73,16 @@ async function main() {
usdcDevnetMint,
usdcDevnetOracle.publicKey,
1,
0.4,
0.07,
0.8,
0.9,
1.5,
0.8,
0.6,
1.2,
1.4,
0.02,
);
} catch (error) {}

View File

@ -164,6 +164,26 @@ export type MangoV4 = {
"name": "tokenIndex",
"type": "u16"
},
{
"name": "util0",
"type": "f32"
},
{
"name": "rate0",
"type": "f32"
},
{
"name": "util1",
"type": "f32"
},
{
"name": "rate1",
"type": "f32"
},
{
"name": "maxRate",
"type": "f32"
},
{
"name": "maintAssetWeight",
"type": "f32"
@ -186,6 +206,17 @@ export type MangoV4 = {
}
]
},
{
"name": "updateIndex",
"accounts": [
{
"name": "bank",
"isMut": true,
"isSigner": false
}
],
"args": []
},
{
"name": "createAccount",
"accounts": [
@ -1355,6 +1386,40 @@ export type MangoV4 = {
"defined": "I80F48"
}
},
{
"name": "lastUpdated",
"type": "i64"
},
{
"name": "util0",
"type": {
"defined": "I80F48"
}
},
{
"name": "rate0",
"type": {
"defined": "I80F48"
}
},
{
"name": "util1",
"type": {
"defined": "I80F48"
}
},
{
"name": "rate1",
"type": {
"defined": "I80F48"
}
},
{
"name": "maxRate",
"type": {
"defined": "I80F48"
}
},
{
"name": "maintAssetWeight",
"type": {
@ -2562,6 +2627,26 @@ export const IDL: MangoV4 = {
"name": "tokenIndex",
"type": "u16"
},
{
"name": "util0",
"type": "f32"
},
{
"name": "rate0",
"type": "f32"
},
{
"name": "util1",
"type": "f32"
},
{
"name": "rate1",
"type": "f32"
},
{
"name": "maxRate",
"type": "f32"
},
{
"name": "maintAssetWeight",
"type": "f32"
@ -2584,6 +2669,17 @@ export const IDL: MangoV4 = {
}
]
},
{
"name": "updateIndex",
"accounts": [
{
"name": "bank",
"isMut": true,
"isSigner": false
}
],
"args": []
},
{
"name": "createAccount",
"accounts": [
@ -3753,6 +3849,40 @@ export const IDL: MangoV4 = {
"defined": "I80F48"
}
},
{
"name": "lastUpdated",
"type": "i64"
},
{
"name": "util0",
"type": {
"defined": "I80F48"
}
},
{
"name": "rate0",
"type": {
"defined": "I80F48"
}
},
{
"name": "util1",
"type": {
"defined": "I80F48"
}
},
{
"name": "rate1",
"type": {
"defined": "I80F48"
}
},
{
"name": "maxRate",
"type": {
"defined": "I80F48"
}
},
{
"name": "maintAssetWeight",
"type": {