Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to Resolve Issue After Running make test Command? #1056

Open
Ansellmo opened this issue Jan 1, 2024 · 2 comments
Open

How to Resolve Issue After Running make test Command? #1056

Ansellmo opened this issue Jan 1, 2024 · 2 comments

Comments

@Ansellmo
Copy link

Ansellmo commented Jan 1, 2024

Hello,

I encountered an issue after executing the make test command. Could you please assist me in resolving this problem?
(I am using an Ubuntu 22.04 machine.
The version of bun is 1.0.20.
Make: 4.3
direnv 2.33.0
Nix 2.19.2
Foundry 0.2.0)
And I ran make build without problem
~/protocol$ make test
[⠑] Compiling...
[⠘] Compiling 60 files with 0.7.6
[⠃] Compiling 505 files with 0.8.19
[⠔] Compiling 290 files with 0.6.12
[⠘] Solc 0.7.6 finished in 932.80ms
[⠘] Solc 0.8.19 finished in 5.71s
[⠊] Solc 0.6.12 finished in 10.82s
Error:
Compiler run failed:
Error (9574): Type IIntegrationAdapter.SpendAssetsHandleType is not implicitly convertible to expected type uint8.
--> tests/utils/core/AdapterUtils.sol:92:9:
|
92 | (
| ^ (Relevant source part starts here and spans across multiple lines).

Error (9553): Invalid type for argument in function call. Invalid implicit conversion from uint8[] memory to IValueInterpreter.RateAsset[] memory requested.
--> tests/utils/core/AssetUniverseUtils.sol:81:26:
|
81 | _rateAssets: rateAssetsUint8
| ^^^^^^^^^^^^^^^

Error (7398): Explicit type conversion not allowed from non-payable "address" to "contract IVaultLib", which has a payable fallback function.
--> tests/utils/core/ExternalPositionUtils.sol:57:32:
|
57 | IVaultLib vaultProxy = IVaultLib(_comptrollerProxy.getVaultProxy());
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Error (7398): Explicit type conversion not allowed from non-payable "address" to "contract IVaultLib", which has a payable fallback function.
--> tests/utils/core/VaultUtils.sol:55:23:
|
55 | vaultProxy_ = IVaultLib(vaultProxy);
| ^^^^^^^^^^^^^^^^^^^^^
Note: Did you mean to declare this variable as "address payable"?
--> tests/utils/core/VaultUtils.sol:47:36:
|
47 | (address comptrollerProxy, address vaultProxy) = _fundDeployer.createNewFund({
| ^^^^^^^^^^^^^^^^^^

Error (7398): Explicit type conversion not allowed from non-payable "address" to "contract IVaultLib", which has a payable fallback function.
--> tests/tests/core/fund-deployer/FundDeployer.t.sol:113:18:
|
113 | assertEq(IVaultLib(vaultProxy).getAccessor(), comptrollerProxy);
| ^^^^^^^^^^^^^^^^^^^^^
Note: Did you mean to declare this variable as "address payable"?
--> tests/tests/core/fund-deployer/FundDeployer.t.sol:100:36:
|
100 | (address comptrollerProxy, address vaultProxy) = core.release.fundDeployer.createNewFund({
| ^^^^^^^^^^^^^^^^^^

Error (7398): Explicit type conversion not allowed from non-payable "address" to "contract IVaultLib", which has a payable fallback function.
--> tests/tests/core/fund-deployer/FundDeployer.t.sol:114:18:
|
114 | assertEq(IVaultLib(vaultProxy).getOwner(), fundOwner);
| ^^^^^^^^^^^^^^^^^^^^^
Note: Did you mean to declare this variable as "address payable"?
--> tests/tests/core/fund-deployer/FundDeployer.t.sol:100:36:
|
100 | (address comptrollerProxy, address vaultProxy) = core.release.fundDeployer.createNewFund({
| ^^^^^^^^^^^^^^^^^^

Error (7398): Explicit type conversion not allowed from non-payable "address" to "contract IVaultLib", which has a payable fallback function.
--> tests/tests/core/fund-deployer/FundDeployerMigrationIn.t.sol:33:9:
|
33 | IVaultLib(address(vaultProxyCore)).setMigrator(migrator);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Error (9553): Invalid type for argument in function call. Invalid implicit conversion from uint8 to IAddressListRegistry.UpdateType requested.
--> tests/tests/peripheral/DepositWrapper.t.sol:40:26:
|
40 | _updateType: uint8(AddressListUpdateType.AddAndRemove),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Error (7398): Explicit type conversion not allowed from non-payable "address" to "contract IDepositWrapper", which has a payable fallback function.
--> tests/tests/peripheral/DepositWrapper.t.sol:67:16:
|
67 | return IDepositWrapper(deployCode("DepositWrapper.sol", args));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Error (9553): Invalid type for argument in function call. Invalid implicit conversion from uint8 to IAddressListRegistry.UpdateType requested.
--> tests/tests/policies/CumulativeSlippageTolerancePolicy.t.sol:68:26:
|
68 | _updateType: uint8(UpdateType.AddAndRemove)
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Error (9553): Invalid type for argument in function call. Invalid implicit conversion from int_const 0 to INoDepegOnRedeemSharesForSpecificAssetsPolicy.PolicyHook requested.
--> tests/tests/policies/NoDepegOnRedeemSharesForSpecificAssetsPolicy.t.sol:259:65:
|
259 | assertTrue(policy.validateRule(comptrollerProxyAddress, 0, ""), "control case");
| ^

Error (9553): Invalid type for argument in function call. Invalid implicit conversion from int_const 0 to INoDepegOnRedeemSharesForSpecificAssetsPolicy.PolicyHook requested.
--> tests/tests/policies/NoDepegOnRedeemSharesForSpecificAssetsPolicy.t.sol:266:65:
|
266 | assertTrue(policy.validateRule(comptrollerProxyAddress, 0, ""), "within lower bound");
| ^

Error (9553): Invalid type for argument in function call. Invalid implicit conversion from int_const 0 to INoDepegOnRedeemSharesForSpecificAssetsPolicy.PolicyHook requested.
--> tests/tests/policies/NoDepegOnRedeemSharesForSpecificAssetsPolicy.t.sol:270:66:
|
270 | assertFalse(policy.validateRule(comptrollerProxyAddress, 0, ""), "outside of lower bound");
| ^

Error (9553): Invalid type for argument in function call. Invalid implicit conversion from int_const 0 to INoDepegOnRedeemSharesForSpecificAssetsPolicy.PolicyHook requested.
--> tests/tests/policies/NoDepegOnRedeemSharesForSpecificAssetsPolicy.t.sol:275:65:
|
275 | assertTrue(policy.validateRule(comptrollerProxyAddress, 0, ""), "within upper bound");
| ^

Error (9553): Invalid type for argument in function call. Invalid implicit conversion from int_const 0 to INoDepegOnRedeemSharesForSpecificAssetsPolicy.PolicyHook requested.
--> tests/tests/policies/NoDepegOnRedeemSharesForSpecificAssetsPolicy.t.sol:279:66:
|
279 | assertFalse(policy.validateRule(comptrollerProxyAddress, 0, ""), "outside of upper bound");
| ^

Error (7398): Explicit type conversion not allowed from non-payable "address" to "contract ICompoundAdapter", which has a payable fallback function.
--> tests/tests/protocols/compound/CompoundV2Adapter.t.sol:64:16:
|
64 | return ICompoundAdapter(deployCode("CompoundAdapter.sol", args));
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Error (9553): Invalid type for argument in function call. Invalid implicit conversion from uint8 to IAddressListRegistry.UpdateType requested.
--> tests/tests/protocols/kiln/KilnStakingPosition.t.sol:145:26:
|
145 | _updateType: uint8(AddressListUpdateType.AddAndRemove),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

Error (9553): Invalid type for argument in function call. Invalid implicit conversion from uint8 to IAddressListRegistry.UpdateType requested.
--> tests/tests/protocols/zeroex/ZeroExV4Adapter.t.sol:70:26:
|
70 | _updateType: uint8(AddressListUpdateType.None),
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

make: *** [Makefile:55: test] Error 1

PS: I created .env file, and the is no problem with that

@Ansellmo
Copy link
Author

Ansellmo commented Jan 1, 2024

And I use the V4 Branch

@SeanJCasey
Copy link
Collaborator

Those errors are caused by a "new" (past couple months) Foundry release.

For now, we pinned the repo's CI to use this nightly release: https://github.com/enzymefinance/protocol/blob/dev/.github/workflows/ci.yaml#L37

You can either update your local Foundry to use that same release, or if you use nix, I think you should be able to use the flake file in this repo (assuming it's up-to-date). If that doesn't work, please report back.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants