From 641c9cd64443e3b3b63d0b8bfbb0a8b6279bc551 Mon Sep 17 00:00:00 2001 From: Jorge-Lopes Date: Tue, 24 Sep 2024 19:12:49 +0100 Subject: [PATCH] fix(a3p): use getContractInfo method to get vault data from Vstorage - Address review comments from #10123 - Comment: https://github.com/Agoric/agoric-sdk/pull/10123/files#r1772061405 --- .../proposals/z:acceptance/vaults.test.js | 41 ++++++------------- 1 file changed, 13 insertions(+), 28 deletions(-) diff --git a/a3p-integration/proposals/z:acceptance/vaults.test.js b/a3p-integration/proposals/z:acceptance/vaults.test.js index 9ca4608b1597..9b73ac982424 100644 --- a/a3p-integration/proposals/z:acceptance/vaults.test.js +++ b/a3p-integration/proposals/z:acceptance/vaults.test.js @@ -1,25 +1,19 @@ import test from 'ava'; import { agops, + agoric, bankSend, getUser, openVault, adjustVault, closeVault, getISTBalance, - queryVstorage, + getContractInfo, ATOM_DENOM, USER1ADDR, waitForBlock, } from '@agoric/synthetic-chain'; -const getFormattedVaultData = vaultData => { - const { values } = JSON.parse(vaultData.value); - const { body } = JSON.parse(values[0]); - const cleanedBody = JSON.parse(body.slice(1)); - return cleanedBody; -}; - test.serial('attempt to open vaults under the minimum amount', async t => { const activeVaultsBefore = await agops.vaults('list', '--from', USER1ADDR); await bankSend(USER1ADDR, `20000000${ATOM_DENOM}`); @@ -65,15 +59,14 @@ test.serial('remove collateral', async t => { const vaultPath = activeVaults[activeVaults.length - 1]; const vaultID = vaultPath.split('.').pop(); - let vaultDataString = await queryVstorage(vaultPath); - let vaultData = getFormattedVaultData(vaultDataString); + let vaultData = await getContractInfo(vaultPath, { agoric, prefix: '' }); const collateralBefore = vaultData.locked.value; await adjustVault(USER1ADDR, vaultID, { wantCollateral: 1.0 }); await waitForBlock(); - vaultDataString = await queryVstorage(vaultPath); - vaultData = getFormattedVaultData(vaultDataString); + vaultData = await getContractInfo(vaultPath, { agoric, prefix: '' }); + const collateralAfter = vaultData.locked.value; t.true( @@ -87,15 +80,13 @@ test.serial('remove IST', async t => { const vaultPath = activeVaults[activeVaults.length - 1]; const vaultID = vaultPath.split('.').pop(); - let vaultDataString = await queryVstorage(vaultPath); - let vaultData = getFormattedVaultData(vaultDataString); + let vaultData = await getContractInfo(vaultPath, { agoric, prefix: '' }); const debtBefore = vaultData.debtSnapshot.debt.value; await adjustVault(USER1ADDR, vaultID, { wantMinted: 1.0 }); await waitForBlock(); - vaultDataString = await queryVstorage(vaultPath); - vaultData = getFormattedVaultData(vaultDataString); + vaultData = await getContractInfo(vaultPath, { agoric, prefix: '' }); const debtAfter = vaultData.debtSnapshot.debt.value; t.true( @@ -112,8 +103,7 @@ test.serial('close vault', async t => { await closeVault(USER1ADDR, vaultID, 6.03); await waitForBlock(); - const vaultDataString = await queryVstorage(vaultPath); - const vaultData = getFormattedVaultData(vaultDataString); + const vaultData = await getContractInfo(vaultPath, { agoric, prefix: '' }); const vaultState = vaultData.vaultState; t.is(vaultState, 'closed', 'The vault should be in the "closed" state.'); @@ -144,15 +134,13 @@ test.serial('add collateral', async t => { const vaultPath = activeVaults[activeVaults.length - 1]; const vaultID = vaultPath.split('.').pop(); - let vaultDataString = await queryVstorage(vaultPath); - let vaultData = getFormattedVaultData(vaultDataString); + let vaultData = await getContractInfo(vaultPath, { agoric, prefix: '' }); const collateralBefore = vaultData.locked.value; await adjustVault(user2Address, vaultID, { giveCollateral: 1.0 }); await waitForBlock(); - vaultDataString = await queryVstorage(vaultPath); - vaultData = getFormattedVaultData(vaultDataString); + vaultData = await getContractInfo(vaultPath, { agoric, prefix: '' }); const collateralAfter = vaultData.locked.value; t.true( @@ -167,15 +155,13 @@ test.serial('add IST', async t => { const vaultPath = activeVaults[activeVaults.length - 1]; const vaultID = vaultPath.split('.').pop(); - let vaultDataString = await queryVstorage(vaultPath); - let vaultData = getFormattedVaultData(vaultDataString); + let vaultData = await getContractInfo(vaultPath, { agoric, prefix: '' }); const debtBefore = vaultData.debtSnapshot.debt.value; await adjustVault(user2Address, vaultID, { giveMinted: 1.0 }); await waitForBlock(); - vaultDataString = await queryVstorage(vaultPath); - vaultData = getFormattedVaultData(vaultDataString); + vaultData = await getContractInfo(vaultPath, { agoric, prefix: '' }); const debtAfter = vaultData.debtSnapshot.debt.value; t.true( @@ -193,8 +179,7 @@ test.serial('close second vault', async t => { await closeVault(user2Address, vaultID, 6.035); await waitForBlock(); - const vaultDataString = await queryVstorage(vaultPath); - const vaultData = getFormattedVaultData(vaultDataString); + const vaultData = await getContractInfo(vaultPath, { agoric, prefix: '' }); const vaultState = vaultData.vaultState; t.is(vaultState, 'closed', 'The vault should be in the "closed" state.');