Skip to content

Commit c08362a

Browse files
committed
Merge branch 'deploy-eco-facet' of github.com:lifinance/contracts into deploy-eco-facet
2 parents ee38e8d + 9252820 commit c08362a

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

test/solidity/utils/MockHTLC.sol

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,12 @@ interface IHTLC {
4141
/// @author LI.FI (https://li.fi)
4242
/// @custom:version 1.0.0
4343
contract MockHTLC is IHTLC {
44+
error OrderDoesNotExist();
45+
error OrderAlreadyCompleted();
46+
error OrderAlreadyRefunded();
47+
error TimelockNotExpired();
48+
error OnlyInitiatorCanRefund();
49+
4450
struct Order {
4551
address initiator;
4652
address redeemer;
@@ -57,11 +63,11 @@ contract MockHTLC is IHTLC {
5763
/// @param orderID The ID of the HTLC order
5864
function refund(bytes32 orderID) external {
5965
Order storage order = orders[orderID];
60-
require(order.initiator != address(0), "Order does not exist");
61-
require(!order.completed, "Order already completed");
62-
require(!order.refunded, "Order already refunded");
63-
require(block.number >= order.timelock, "Timelock not expired");
64-
require(msg.sender == order.initiator, "Only initiator can refund");
66+
if (order.initiator == address(0)) revert OrderDoesNotExist();
67+
if (order.completed) revert OrderAlreadyCompleted();
68+
if (order.refunded) revert OrderAlreadyRefunded();
69+
if (block.number < order.timelock) revert TimelockNotExpired();
70+
if (msg.sender != order.initiator) revert OnlyInitiatorCanRefund();
6571

6672
order.refunded = true;
6773
// In a real implementation, this would transfer funds
@@ -93,4 +99,4 @@ contract MockHTLC is IHTLC {
9399
refunded: false
94100
});
95101
}
96-
}
102+
}

0 commit comments

Comments
 (0)