From 5ab48fb6e0348a1f3bb871c2a44bb75f1d7bbcea Mon Sep 17 00:00:00 2001 From: microwavedcola1 Date: Sat, 9 Apr 2022 17:09:06 +0200 Subject: [PATCH] rust: Fix args in tests to more realistic values, ts: expose args, update idl Signed-off-by: microwavedcola1 --- .../tests/program_test/mango_setup.rs | 8 +- ts/client.ts | 25 +++- ts/example1-admin.ts | 27 +++- ts/mango_v4.ts | 130 ++++++++++++++++++ 4 files changed, 180 insertions(+), 10 deletions(-) diff --git a/programs/mango-v4/tests/program_test/mango_setup.rs b/programs/mango-v4/tests/program_test/mango_setup.rs index eb4543a86..806a7025e 100644 --- a/programs/mango-v4/tests/program_test/mango_setup.rs +++ b/programs/mango-v4/tests/program_test/mango_setup.rs @@ -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, diff --git a/ts/client.ts b/ts/client.ts index 84fb7cffd..07177807c 100644 --- a/ts/client.ts +++ b/ts/client.ts @@ -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 { 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, diff --git a/ts/example1-admin.ts b/ts/example1-admin.ts index 587a09121..33266ec1c 100644 --- a/ts/example1-admin.ts +++ b/ts/example1-admin.ts @@ -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) {} diff --git a/ts/mango_v4.ts b/ts/mango_v4.ts index 194c59e3c..4beef6a64 100644 --- a/ts/mango_v4.ts +++ b/ts/mango_v4.ts @@ -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": {