diff --git a/src/Errors/GenericErrors.sol b/src/Errors/GenericErrors.sol index 5d373dec3..a270a30d8 100644 --- a/src/Errors/GenericErrors.sol +++ b/src/Errors/GenericErrors.sol @@ -1,7 +1,9 @@ // SPDX-License-Identifier: LGPL-3.0-only -/// @custom:version 1.0.1 pragma solidity ^0.8.17; +/// @custom:version 1.0.2 +/// @notice This contract contains errors commonly used by the LiFi protocol + error AlreadyInitialized(); error CannotAuthoriseSelf(); error CannotBridgeToSameNetwork(); diff --git a/src/Libraries/LibAsset.sol b/src/Libraries/LibAsset.sol index 59fd20570..5a270fbaa 100644 --- a/src/Libraries/LibAsset.sol +++ b/src/Libraries/LibAsset.sol @@ -7,7 +7,8 @@ import { SafeTransferLib } from "solady/utils/SafeTransferLib.sol"; import { InvalidReceiver, NullAddrIsNotAValidSpender, InvalidAmount, NullAddrIsNotAnERC20Token } from "../Errors/GenericErrors.sol"; /// @title LibAsset -/// @custom:version 2.1.0 +/// @custom:version 2.1.1 +/// @author LI.FI (https://li.fi) /// @notice This library contains helpers for dealing with onchain transfers /// of assets, including accounting for the native asset `assetId` /// conventions and any noncompliant ERC20 transfers diff --git a/test/solidity/Facets/RelayFacet.t.sol b/test/solidity/Facets/RelayFacet.t.sol index 773763478..6437b39a7 100644 --- a/test/solidity/Facets/RelayFacet.t.sol +++ b/test/solidity/Facets/RelayFacet.t.sol @@ -6,6 +6,7 @@ import { LibAllowList } from "lifi/Libraries/LibAllowList.sol"; import { LibAsset } from "lifi/Libraries/LibAsset.sol"; import { RelayFacet } from "lifi/Facets/RelayFacet.sol"; import { ILiFi } from "lifi/Interfaces/ILiFi.sol"; +import { InvalidConfig } from "lifi/Errors/GenericErrors.sol"; contract Reverter { error AlwaysReverts(); @@ -124,6 +125,17 @@ contract RelayFacetTest is TestBaseFacet { } } + function testRevert_WhenUsingInvalidConfig() public { + // invalid relay solver + vm.expectRevert(InvalidConfig.selector); + new RelayFacet(RELAY_RECEIVER, address(0)); + + // invalid relay receiver + vm.expectRevert(InvalidConfig.selector); + + new RelayFacet(address(0), relaySolver); + } + function test_CanDeployFacet() public virtual { new RelayFacet(RELAY_RECEIVER, relaySolver); }