-
Notifications
You must be signed in to change notification settings - Fork 164
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
test: create routers pattern for multi-version tests
- Loading branch information
1 parent
02878f3
commit 36dcef6
Showing
17 changed files
with
679 additions
and
69 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
// SPDX-License-Identifier: Unlicense | ||
pragma solidity >=0.6.0 <0.9.0; | ||
|
||
interface IComptrollerLib { | ||
event AutoProtocolFeeSharesBuybackSet(bool autoProtocolFeeSharesBuyback); | ||
event BuyBackMaxProtocolFeeSharesFailed( | ||
bytes indexed failureReturnData, uint256 sharesAmount, uint256 buybackValueInMln, uint256 gav | ||
); | ||
event DeactivateFeeManagerFailed(); | ||
event GasRelayPaymasterSet(address gasRelayPaymaster); | ||
event MigratedSharesDuePaid(uint256 sharesDue); | ||
event PayProtocolFeeDuringDestructFailed(); | ||
event PreRedeemSharesHookFailed(bytes indexed failureReturnData, address indexed redeemer, uint256 sharesAmount); | ||
event RedeemSharesInKindCalcGavFailed(); | ||
event SharesBought(address indexed buyer, uint256 investmentAmount, uint256 sharesIssued, uint256 sharesReceived); | ||
event SharesRedeemed( | ||
address indexed redeemer, | ||
address indexed recipient, | ||
uint256 sharesAmount, | ||
address[] receivedAssets, | ||
uint256[] receivedAssetAmounts | ||
); | ||
event VaultProxySet(address vaultProxy); | ||
|
||
function activate(bool _isMigration) external; | ||
function buyBackProtocolFeeShares(uint256 _sharesAmount) external; | ||
function buyShares(uint256 _investmentAmount, uint256 _minSharesQuantity) | ||
external | ||
returns (uint256 sharesReceived_); | ||
function buySharesOnBehalf(address _buyer, uint256 _investmentAmount, uint256 _minSharesQuantity) | ||
external | ||
returns (uint256 sharesReceived_); | ||
function calcGav() external returns (uint256 gav_); | ||
function calcGrossShareValue() external returns (uint256 grossShareValue_); | ||
function callOnExtension(address _extension, uint256 _actionId, bytes memory _callArgs) external; | ||
function deployGasRelayPaymaster() external; | ||
function depositToGasRelayPaymaster() external; | ||
function destructActivated(uint256 _deactivateFeeManagerGasLimit, uint256 _payProtocolFeeGasLimit) external; | ||
function destructUnactivated() external; | ||
function doesAutoProtocolFeeSharesBuyback() external view returns (bool doesAutoBuyback_); | ||
function getDenominationAsset() external view returns (address denominationAsset_); | ||
function getDispatcher() external view returns (address dispatcher_); | ||
function getExternalPositionManager() external view returns (address externalPositionManager_); | ||
function getFeeManager() external view returns (address feeManager_); | ||
function getFundDeployer() external view returns (address fundDeployer_); | ||
function getGasRelayPaymaster() external view returns (address gasRelayPaymaster_); | ||
function getGasRelayPaymasterFactory() external view returns (address gasRelayPaymasterFactory_); | ||
function getGasRelayTrustedForwarder() external view returns (address trustedForwarder_); | ||
function getIntegrationManager() external view returns (address integrationManager_); | ||
function getLastSharesBoughtTimestampForAccount(address _who) | ||
external | ||
view | ||
returns (uint256 lastSharesBoughtTimestamp_); | ||
function getMlnToken() external view returns (address mlnToken_); | ||
function getPolicyManager() external view returns (address policyManager_); | ||
function getProtocolFeeReserve() external view returns (address protocolFeeReserve_); | ||
function getSharesActionTimelock() external view returns (uint256 sharesActionTimelock_); | ||
function getValueInterpreter() external view returns (address valueInterpreter_); | ||
function getVaultProxy() external view returns (address vaultProxy_); | ||
function getWethToken() external view returns (address wethToken_); | ||
function init(address _denominationAsset, uint256 _sharesActionTimelock) external; | ||
function permissionedVaultAction(uint8 _action, bytes memory _actionData) external; | ||
function preTransferSharesHook(address _sender, address _recipient, uint256 _amount) external; | ||
function preTransferSharesHookFreelyTransferable(address _sender) external view; | ||
function pullWethForGasRelayer(uint256 _amount) external; | ||
function redeemSharesForSpecificAssets( | ||
address _recipient, | ||
uint256 _sharesQuantity, | ||
address[] memory _payoutAssets, | ||
uint256[] memory _payoutAssetPercentages | ||
) external returns (uint256[] memory payoutAmounts_); | ||
function redeemSharesInKind( | ||
address _recipient, | ||
uint256 _sharesQuantity, | ||
address[] memory _additionalAssets, | ||
address[] memory _assetsToSkip | ||
) external returns (address[] memory payoutAssets_, uint256[] memory payoutAmounts_); | ||
function setAutoProtocolFeeSharesBuyback(bool _nextAutoProtocolFeeSharesBuyback) external; | ||
function setGasRelayPaymaster(address _nextGasRelayPaymaster) external; | ||
function setVaultProxy(address _vaultProxy) external; | ||
function shutdownGasRelayPaymaster() external; | ||
function vaultCallOnContract(address _contract, bytes4 _selector, bytes memory _encodedArgs) | ||
external | ||
returns (bytes memory returnData_); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
// SPDX-License-Identifier: Unlicense | ||
pragma solidity >=0.6.0 <0.9.0; | ||
|
||
interface IExternalPositionManager { | ||
event CallOnExternalPositionExecutedForFund( | ||
address indexed caller, | ||
address indexed comptrollerProxy, | ||
address indexed externalPosition, | ||
uint256 actionId, | ||
bytes actionArgs, | ||
address[] assetsToTransfer, | ||
uint256[] amountsToTransfer, | ||
address[] assetsToReceive | ||
); | ||
event ExternalPositionDeployedForFund( | ||
address indexed comptrollerProxy, | ||
address indexed vaultProxy, | ||
address externalPosition, | ||
uint256 indexed externalPositionTypeId, | ||
bytes data | ||
); | ||
event ExternalPositionTypeInfoUpdated(uint256 indexed typeId, address lib, address parser); | ||
event ValidatedVaultProxySetForFund(address indexed comptrollerProxy, address indexed vaultProxy); | ||
|
||
function activateForFund(bool) external; | ||
function deactivateForFund() external; | ||
function getExternalPositionFactory() external view returns (address externalPositionFactory_); | ||
function getExternalPositionLibForType(uint256 _typeId) external view returns (address lib_); | ||
function getExternalPositionParserForType(uint256 _typeId) external view returns (address parser_); | ||
function getFundDeployer() external view returns (address fundDeployer_); | ||
function getOwner() external view returns (address owner_); | ||
function getPolicyManager() external view returns (address policyManager_); | ||
function getVaultProxyForFund(address _comptrollerProxy) external view returns (address vaultProxy_); | ||
function receiveCallFromComptroller(address _caller, uint256 _actionId, bytes memory _callArgs) external; | ||
function setConfigForFund(address _comptrollerProxy, address _vaultProxy, bytes memory) external; | ||
function updateExternalPositionTypesInfo( | ||
uint256[] memory _typeIds, | ||
address[] memory _libs, | ||
address[] memory _parsers | ||
) external; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,32 @@ | ||
// SPDX-License-Identifier: Unlicense | ||
pragma solidity >=0.6.0 <0.9.0; | ||
|
||
interface IFeeManager { | ||
event FeeEnabledForFund(address indexed comptrollerProxy, address indexed fee, bytes settingsData); | ||
event FeeSettledForFund( | ||
address indexed comptrollerProxy, | ||
address indexed fee, | ||
uint8 indexed settlementType, | ||
address payer, | ||
address payee, | ||
uint256 sharesDue | ||
); | ||
event SharesOutstandingPaidForFund( | ||
address indexed comptrollerProxy, address indexed fee, address indexed payee, uint256 sharesDue | ||
); | ||
event ValidatedVaultProxySetForFund(address indexed comptrollerProxy, address indexed vaultProxy); | ||
|
||
function activateForFund(bool) external; | ||
function deactivateForFund() external; | ||
function getEnabledFeesForFund(address _comptrollerProxy) external view returns (address[] memory enabledFees_); | ||
function getFeeSharesOutstandingForFund(address _comptrollerProxy, address _fee) | ||
external | ||
view | ||
returns (uint256 sharesOutstanding_); | ||
function getFundDeployer() external view returns (address fundDeployer_); | ||
function getOwner() external view returns (address owner_); | ||
function getVaultProxyForFund(address _comptrollerProxy) external view returns (address vaultProxy_); | ||
function invokeHook(uint8 _hook, bytes memory _settlementData, uint256 _gav) external; | ||
function receiveCallFromComptroller(address, uint256 _actionId, bytes memory _callArgs) external; | ||
function setConfigForFund(address _comptrollerProxy, address _vaultProxy, bytes memory _configData) external; | ||
} |
Oops, something went wrong.