Fixes missing param at deployDefaultReserveInterestRateStrategy. Update WalletBalanceProvider to add provider argument. Minor fixes migration script.

This commit is contained in:
David Racero 2020-11-20 11:32:17 +01:00
parent 886f2fbc70
commit 92168f500b
8 changed files with 57 additions and 48 deletions

View File

@ -1,5 +1,6 @@
stages: stages:
- test - test
- deploy-mainnet-fork
test: test:
stage: test stage: test
@ -12,3 +13,14 @@ test:
after_script: after_script:
- docker-compose -f docker-compose.test.yml run contracts-env npm run ci:clean - docker-compose -f docker-compose.test.yml run contracts-env npm run ci:clean
- docker-compose -f docker-compose.test.yml down - docker-compose -f docker-compose.test.yml down
deploy-mainnet-fork:
stage: deploy-mainnet-fork
tags:
- aave-build-runner
before_script:
- docker-compose build
script:
- docker-compose run contracts-env npm aave:main:fork
after_script:
- docker-compose -f docker-compose.test.yml run contracts-env npm run ci:clean
- docker-compose -f docker-compose.test.yml down

View File

@ -24,13 +24,8 @@ contract WalletBalanceProvider {
using SafeERC20 for IERC20; using SafeERC20 for IERC20;
using ReserveConfiguration for ReserveConfiguration.Map; using ReserveConfiguration for ReserveConfiguration.Map;
ILendingPoolAddressesProvider internal immutable _provider;
address constant MOCK_ETH_ADDRESS = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE; address constant MOCK_ETH_ADDRESS = 0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE;
constructor(ILendingPoolAddressesProvider provider) public {
_provider = provider;
}
/** /**
@dev Fallback function, don't accept any ETH @dev Fallback function, don't accept any ETH
**/ **/
@ -80,12 +75,12 @@ contract WalletBalanceProvider {
/** /**
@dev provides balances of user wallet for all reserves available on the pool @dev provides balances of user wallet for all reserves available on the pool
*/ */
function getUserWalletBalances(address user) function getUserWalletBalances(address provider, address user)
external external
view view
returns (address[] memory, uint256[] memory) returns (address[] memory, uint256[] memory)
{ {
ILendingPool pool = ILendingPool(_provider.getLendingPool()); ILendingPool pool = ILendingPool(ILendingPoolAddressesProvider(provider).getLendingPool());
address[] memory reserves = pool.getReservesList(); address[] memory reserves = pool.getReservesList();
address[] memory reservesWithEth = new address[](reserves.length + 1); address[] memory reservesWithEth = new address[](reserves.length + 1);

View File

@ -244,14 +244,11 @@ export const deployMockFlashLoanReceiver = async (
verify verify
); );
export const deployWalletBalancerProvider = async ( export const deployWalletBalancerProvider = async (verify?: boolean) =>
addressesProvider: tEthereumAddress,
verify?: boolean
) =>
withSaveAndVerify( withSaveAndVerify(
await new WalletBalanceProviderFactory(await getFirstSigner()).deploy(addressesProvider), await new WalletBalanceProviderFactory(await getFirstSigner()).deploy(),
eContractid.WalletBalanceProvider, eContractid.WalletBalanceProvider,
[addressesProvider], [],
verify verify
); );
@ -288,7 +285,7 @@ export const deployMintableDelegationERC20 = async (
verify verify
); );
export const deployDefaultReserveInterestRateStrategy = async ( export const deployDefaultReserveInterestRateStrategy = async (
args: [tEthereumAddress, string, string, string, string, string], args: [tEthereumAddress, string, string, string, string, string, string],
verify: boolean verify: boolean
) => ) =>
withSaveAndVerify( withSaveAndVerify(

View File

@ -22,7 +22,10 @@ import {
} from '../../helpers/init-helpers'; } from '../../helpers/init-helpers';
import { getAllTokenAddresses } from '../../helpers/mock-helpers'; import { getAllTokenAddresses } from '../../helpers/mock-helpers';
import { ZERO_ADDRESS } from '../../helpers/constants'; import { ZERO_ADDRESS } from '../../helpers/constants';
import {getAllMockedTokens, getLendingPoolAddressesProvider} from '../../helpers/contracts-getters'; import {
getAllMockedTokens,
getLendingPoolAddressesProvider,
} from '../../helpers/contracts-getters';
import { insertContractAddressInDb } from '../../helpers/contracts-helpers'; import { insertContractAddressInDb } from '../../helpers/contracts-helpers';
task('dev:initialize-lending-pool', 'Initialize lending pool configuration.') task('dev:initialize-lending-pool', 'Initialize lending pool configuration.')
@ -75,7 +78,7 @@ task('dev:initialize-lending-pool', 'Initialize lending pool configuration.')
mockFlashLoanReceiver.address mockFlashLoanReceiver.address
); );
await deployWalletBalancerProvider(addressesProvider.address, verify); await deployWalletBalancerProvider(verify);
await insertContractAddressInDb(eContractid.AaveProtocolDataProvider, testHelpers.address); await insertContractAddressInDb(eContractid.AaveProtocolDataProvider, testHelpers.address);

View File

@ -8,6 +8,5 @@ task('dev:wallet-balance-provider', 'Initialize lending pool configuration.')
.setAction(async ({ verify }, localBRE) => { .setAction(async ({ verify }, localBRE) => {
await localBRE.run('set-DRE'); await localBRE.run('set-DRE');
const addressesProvider = await getLendingPoolAddressesProvider(); await deployWalletBalancerProvider(verify);
await deployWalletBalancerProvider(addressesProvider.address, verify);
}); });

View File

@ -15,7 +15,10 @@ import {
enableReservesAsCollateralByHelper, enableReservesAsCollateralByHelper,
} from '../../helpers/init-helpers'; } from '../../helpers/init-helpers';
import { exit } from 'process'; import { exit } from 'process';
import {getLendingPoolAddressesProvider} from '../../helpers/contracts-getters'; import {
getAaveProtocolDataProvider,
getLendingPoolAddressesProvider,
} from '../../helpers/contracts-getters';
import { ZERO_ADDRESS } from '../../helpers/constants'; import { ZERO_ADDRESS } from '../../helpers/constants';
task('full:initialize-lending-pool', 'Initialize lending pool configuration.') task('full:initialize-lending-pool', 'Initialize lending pool configuration.')
@ -32,7 +35,7 @@ task('full:initialize-lending-pool', 'Initialize lending pool configuration.')
const addressesProvider = await getLendingPoolAddressesProvider(); const addressesProvider = await getLendingPoolAddressesProvider();
const testHelpers = await deployAaveProtocolDataProvider(addressesProvider.address, verify); const testHelpers = await getAaveProtocolDataProvider();
const admin = await addressesProvider.getPoolAdmin(); const admin = await addressesProvider.getPoolAdmin();
if (!reserveAssets) { if (!reserveAssets) {
@ -48,7 +51,7 @@ task('full:initialize-lending-pool', 'Initialize lending pool configuration.')
await addressesProvider.setLendingPoolCollateralManager(collateralManager.address) await addressesProvider.setLendingPoolCollateralManager(collateralManager.address)
); );
await deployWalletBalancerProvider(addressesProvider.address, verify); await deployWalletBalancerProvider(verify);
const wethAddress = await getWethAddress(poolConfig); const wethAddress = await getWethAddress(poolConfig);
const lendingPoolAddress = await addressesProvider.getLendingPool(); const lendingPoolAddress = await addressesProvider.getLendingPool();

View File

@ -226,7 +226,7 @@ const buildTestEnv = async (deployer: Signer, secondaryWallet: Signer) => {
const mockFlashLoanReceiver = await deployMockFlashLoanReceiver(addressesProvider.address); const mockFlashLoanReceiver = await deployMockFlashLoanReceiver(addressesProvider.address);
await insertContractAddressInDb(eContractid.MockFlashLoanReceiver, mockFlashLoanReceiver.address); await insertContractAddressInDb(eContractid.MockFlashLoanReceiver, mockFlashLoanReceiver.address);
await deployWalletBalancerProvider(addressesProvider.address); await deployWalletBalancerProvider();
await deployWETHGateway([mockTokens.WETH.address, lendingPoolAddress]); await deployWETHGateway([mockTokens.WETH.address, lendingPoolAddress]);