From f5c86e5c635c0678f8f27e022ed04262afdb0826 Mon Sep 17 00:00:00 2001 From: Shivaansh Kapoor Date: Wed, 27 Nov 2024 15:55:21 -0800 Subject: [PATCH] make fix for stack to deep and fix tests --- src/RecipeMarketHub.sol | 5 +-- .../Test_APOfferCreation.t.sol | 1 + .../RecipeMarketHub/Test_Fill_APOffer.t.sol | 38 ++++++++++--------- .../RecipeMarketHub/Test_Fill_IPOffer.t.sol | 30 +++++++-------- .../Test_IPOfferCreation.t.sol | 6 ++- .../TestFuzz_APOfferCreation.t.sol | 4 +- .../TestFuzz_Fill_IPOffer.t.sol | 4 +- .../TestFuzz_IPOfferCreation.t.sol | 3 ++ 8 files changed, 50 insertions(+), 41 deletions(-) diff --git a/src/RecipeMarketHub.sol b/src/RecipeMarketHub.sol index 025c9e4d..05b503ce 100644 --- a/src/RecipeMarketHub.sol +++ b/src/RecipeMarketHub.sol @@ -377,11 +377,10 @@ contract RecipeMarketHub is RecipeMarketHubBase { uint256[] memory protocolFeesPaid = new uint256[](numIncentives); uint256[] memory frontendFeesPaid = new uint256[](numIncentives); - // Calculate the percentage of the offer the AP is filling - uint256 fillPercentage = fillAmount.divWadDown(offer.quantity); - // Perform incentive accounting on a per incentive basis for (uint256 i = 0; i < numIncentives; ++i) { + // Calculate the percentage of the offer the AP is filling + uint256 fillPercentage = fillAmount.divWadDown(offer.quantity); // Incentive address address incentive = offer.incentivesOffered[i]; diff --git a/test/concrete/RecipeMarketHub/Test_APOfferCreation.t.sol b/test/concrete/RecipeMarketHub/Test_APOfferCreation.t.sol index 0e2d057b..30eceec2 100644 --- a/test/concrete/RecipeMarketHub/Test_APOfferCreation.t.sol +++ b/test/concrete/RecipeMarketHub/Test_APOfferCreation.t.sol @@ -28,6 +28,7 @@ contract Test_APOfferCreation_RecipeMarketHub is RecipeMarketHubTestBase { emit RecipeMarketHubBase.APOfferCreated( 0, // Expected offer ID (starts at 0) marketHash, // Market ID + ALICE_ADDRESS, address(0), // No funding vault quantity, tokensRequested, // Tokens requested diff --git a/test/concrete/RecipeMarketHub/Test_Fill_APOffer.t.sol b/test/concrete/RecipeMarketHub/Test_Fill_APOffer.t.sol index bccf643f..2d5e477c 100644 --- a/test/concrete/RecipeMarketHub/Test_Fill_APOffer.t.sol +++ b/test/concrete/RecipeMarketHub/Test_Fill_APOffer.t.sol @@ -2,7 +2,7 @@ pragma solidity ^0.8.0; import "src/base/RecipeMarketHubBase.sol"; -import {ERC4626} from "src/RecipeMarketHub.sol"; +import { ERC4626 } from "src/RecipeMarketHub.sol"; import "src/WrappedVault.sol"; import { MockERC20, ERC20 } from "../../mocks/MockERC20.sol"; @@ -62,7 +62,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { // Expect events for offer fill vm.expectEmit(false, false, false, false); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); vm.recordLogs(); @@ -129,7 +129,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { // Expect events for offer fill vm.expectEmit(false, false, false, false); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); vm.recordLogs(); @@ -199,7 +199,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(AP_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -265,7 +265,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { // Expect events for offer fill vm.expectEmit(false, false, false, false); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); vm.recordLogs(); @@ -305,7 +305,8 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { uint256 fillAmount = 25_000e18; // Fill amount // Create a fillable IP offer - (, RecipeMarketHubBase.APOffer memory offer, Points points) = createAPOffer_ForPoints(marketHash, address(mockVault), offerAmount, AP_ADDRESS, IP_ADDRESS); + (, RecipeMarketHubBase.APOffer memory offer, Points points) = + createAPOffer_ForPoints(marketHash, address(mockVault), offerAmount, AP_ADDRESS, IP_ADDRESS); (, uint256 expectedFrontendFeeAmount, uint256 expectedProtocolFeeAmount, uint256 expectedIncentiveAmount) = calculateAPOfferExpectedIncentiveAndFrontendFee(recipeMarketHub.protocolFee(), frontendFee, offerAmount, fillAmount, 1000e18); @@ -338,7 +339,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(address(mockVault), address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -395,7 +396,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { // Expect events for offer fill vm.expectEmit(false, false, false, false); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); vm.recordLogs(); @@ -455,7 +456,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(AP_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -521,7 +522,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { // Expect events for offer fill vm.expectEmit(false, false, false, false); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); vm.recordLogs(); @@ -561,7 +562,8 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { uint256 fillAmount = 25_000e18; // Fill amount // Create a fillable IP offer - (, RecipeMarketHubBase.APOffer memory offer, Points points) = createAPOffer_ForPoints(marketHash, address(mockVault), offerAmount, AP_ADDRESS, IP_ADDRESS); + (, RecipeMarketHubBase.APOffer memory offer, Points points) = + createAPOffer_ForPoints(marketHash, address(mockVault), offerAmount, AP_ADDRESS, IP_ADDRESS); (, uint256 expectedFrontendFeeAmount, uint256 expectedProtocolFeeAmount, uint256 expectedIncentiveAmount) = calculateAPOfferExpectedIncentiveAndFrontendFee(recipeMarketHub.protocolFee(), frontendFee, offerAmount, fillAmount, 1000e18); @@ -584,7 +586,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(address(mockVault), address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -644,7 +646,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { // Expect events for offer fill vm.expectEmit(false, false, false, false); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); vm.recordLogs(); @@ -704,7 +706,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(AP_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -770,7 +772,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { // Expect events for offer fill vm.expectEmit(false, false, false, false); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); vm.recordLogs(); @@ -810,7 +812,8 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { uint256 fillAmount = 25_000e18; // Fill amount // Create a fillable IP offer - (, RecipeMarketHubBase.APOffer memory offer, Points points) = createAPOffer_ForPoints(marketHash, address(mockVault), offerAmount, AP_ADDRESS, IP_ADDRESS); + (, RecipeMarketHubBase.APOffer memory offer, Points points) = + createAPOffer_ForPoints(marketHash, address(mockVault), offerAmount, AP_ADDRESS, IP_ADDRESS); (, uint256 expectedFrontendFeeAmount, uint256 expectedProtocolFeeAmount, uint256 expectedIncentiveAmount) = calculateAPOfferExpectedIncentiveAndFrontendFee(recipeMarketHub.protocolFee(), frontendFee, offerAmount, fillAmount, 1000e18); @@ -826,7 +829,6 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { vm.stopPrank(); - vm.expectEmit(true, false, true, false, address(mockVault)); emit ERC4626.Withdraw(address(recipeMarketHub), address(0), AP_ADDRESS, fillAmount, 0); @@ -834,7 +836,7 @@ contract Test_Fill_APOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(address(mockVault), address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.APOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.APOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); diff --git a/test/concrete/RecipeMarketHub/Test_Fill_IPOffer.t.sol b/test/concrete/RecipeMarketHub/Test_Fill_IPOffer.t.sol index 956db116..fd9f529b 100644 --- a/test/concrete/RecipeMarketHub/Test_Fill_IPOffer.t.sol +++ b/test/concrete/RecipeMarketHub/Test_Fill_IPOffer.t.sol @@ -6,7 +6,7 @@ import "src/WrappedVault.sol"; import { MockERC20, ERC20 } from "../../mocks/MockERC20.sol"; import { MockERC4626 } from "test/mocks/MockERC4626.sol"; -import {ERC4626} from "src/RecipeMarketHub.sol"; +import { ERC4626 } from "src/RecipeMarketHub.sol"; import { RecipeMarketHubTestBase } from "../../utils/RecipeMarketHub/RecipeMarketHubTestBase.sol"; import { FixedPointMathLib } from "lib/solmate/src/utils/FixedPointMathLib.sol"; @@ -54,7 +54,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(AP_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -115,7 +115,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(AP_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -182,7 +182,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(AP_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -246,7 +246,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(address(mockVault), address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -325,7 +325,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(address(mockVault), address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -373,7 +373,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(AP_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -436,7 +436,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(AP_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -505,7 +505,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(address(mockVault), address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -580,7 +580,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(address(mockVault), address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -636,7 +636,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(AP_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -699,7 +699,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(AP_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -768,7 +768,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(address(mockVault), address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -843,7 +843,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(address(mockVault), address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record the logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -869,7 +869,7 @@ contract Test_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { // Ensure the weiroll wallet got the liquidity assertEq(mockLiquidityToken.balanceOf(weirollWallet), fillAmount); - // Check the frontend fee recipient received the correct fee + // Check the frontend fee recipient received the correct fee assertEq(recipeMarketHub.feeClaimantToTokenToAmount(FRONTEND_FEE_RECIPIENT, address(mockIncentiveToken)), 0); // Check the protocol fee recipient received the correct fee diff --git a/test/concrete/RecipeMarketHub/Test_IPOfferCreation.t.sol b/test/concrete/RecipeMarketHub/Test_IPOfferCreation.t.sol index bade3389..09c805f4 100644 --- a/test/concrete/RecipeMarketHub/Test_IPOfferCreation.t.sol +++ b/test/concrete/RecipeMarketHub/Test_IPOfferCreation.t.sol @@ -43,6 +43,7 @@ contract Test_IPOfferCreation_RecipeMarketHub is RecipeMarketHubTestBase { 0, // Expected offer ID (starts at 0) bytes32(0), marketHash, // Market ID + address(0), quantity, // Total quantity tokensOffered, // Tokens offered incentiveAmountsOffered, // Amounts offered @@ -54,7 +55,9 @@ contract Test_IPOfferCreation_RecipeMarketHub is RecipeMarketHubTestBase { // MockERC20 should track calls to `transferFrom` vm.expectCall( address(mockIncentiveToken), - abi.encodeWithSelector(ERC20.transferFrom.selector, ALICE_ADDRESS, address(recipeMarketHub), protocolFeeAmount + frontendFeeAmount + incentiveAmount) + abi.encodeWithSelector( + ERC20.transferFrom.selector, ALICE_ADDRESS, address(recipeMarketHub), protocolFeeAmount + frontendFeeAmount + incentiveAmount + ) ); // Create the IP offer @@ -112,6 +115,7 @@ contract Test_IPOfferCreation_RecipeMarketHub is RecipeMarketHubTestBase { 0, // Expected offer ID (starts at 0) bytes32(0), marketHash, // Market ID + address(0), quantity, // Total quantity tokensOffered, // Tokens offered incentiveAmountsOffered, // Amounts offered diff --git a/test/fuzz/RecipeMarketHub/TestFuzz_APOfferCreation.t.sol b/test/fuzz/RecipeMarketHub/TestFuzz_APOfferCreation.t.sol index 7326e101..8ba38de8 100644 --- a/test/fuzz/RecipeMarketHub/TestFuzz_APOfferCreation.t.sol +++ b/test/fuzz/RecipeMarketHub/TestFuzz_APOfferCreation.t.sol @@ -10,7 +10,7 @@ import { MockERC20 } from "../../mocks/MockERC20.sol"; contract TestFuzz_APOfferCreation_RecipeMarketHub is RecipeMarketHubTestBase { using AddressArrayUtils for address[]; - + function setUp() external { uint256 protocolFee = 0.01e18; // 1% protocol fee uint256 minimumFrontendFee = 0.001e18; // 0.1% minimum frontend fee @@ -50,7 +50,7 @@ contract TestFuzz_APOfferCreation_RecipeMarketHub is RecipeMarketHubTestBase { address fundingVault = _fundingVaultSeed % 2 == 0 ? address(0) : address(mockVault); vm.expectEmit(true, true, true, true); - emit RecipeMarketHubBase.APOfferCreated(0, marketHash, fundingVault, _expiry, tokensRequested, tokenAmountsRequested, _quantity); + emit RecipeMarketHubBase.APOfferCreated(0, marketHash, address(0), fundingVault, _expiry, tokensRequested, tokenAmountsRequested, _quantity); bytes32 offerHash = recipeMarketHub.createAPOffer(marketHash, fundingVault, _quantity, _expiry, tokensRequested, tokenAmountsRequested); diff --git a/test/fuzz/RecipeMarketHub/TestFuzz_Fill_IPOffer.t.sol b/test/fuzz/RecipeMarketHub/TestFuzz_Fill_IPOffer.t.sol index 143fc025..99a3c159 100644 --- a/test/fuzz/RecipeMarketHub/TestFuzz_Fill_IPOffer.t.sol +++ b/test/fuzz/RecipeMarketHub/TestFuzz_Fill_IPOffer.t.sol @@ -51,7 +51,7 @@ contract TestFuzz_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(BOB_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); @@ -114,7 +114,7 @@ contract TestFuzz_Fill_IPOffer_RecipeMarketHub is RecipeMarketHubTestBase { emit ERC20.Transfer(BOB_ADDRESS, address(0), fillAmount); vm.expectEmit(false, false, false, false, address(recipeMarketHub)); - emit RecipeMarketHubBase.IPOfferFilled(0, 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); + emit RecipeMarketHubBase.IPOfferFilled(0, address(0), 0, address(0), new uint256[](0), new uint256[](0), new uint256[](0)); // Record logs to capture Transfer events to get Weiroll wallet address vm.recordLogs(); diff --git a/test/fuzz/RecipeMarketHub/TestFuzz_IPOfferCreation.t.sol b/test/fuzz/RecipeMarketHub/TestFuzz_IPOfferCreation.t.sol index b70759f4..ed236a48 100644 --- a/test/fuzz/RecipeMarketHub/TestFuzz_IPOfferCreation.t.sol +++ b/test/fuzz/RecipeMarketHub/TestFuzz_IPOfferCreation.t.sol @@ -65,6 +65,7 @@ contract TestFuzz_IPOfferCreation_RecipeMarketHub is RecipeMarketHubTestBase { 0, // Expected offer ID (starts at 0) recipeMarketHub.getOfferHash(0, marketHash, _creator, _expiry, _quantity, incentivesOffered, incentiveAmount), marketHash, // Market ID + _creator, _quantity, // Total quantity incentivesOffered, // Tokens offered incentiveAmountsOffered, // Amounts offered @@ -170,6 +171,7 @@ contract TestFuzz_IPOfferCreation_RecipeMarketHub is RecipeMarketHubTestBase { 0, // Expected offer ID (starts at 0) recipeMarketHub.getOfferHash(0, marketHash, _creator, _expiry, _quantity, incentivesOffered, incentiveAmount), marketHash, // Market ID + _creator, _quantity, // Total quantity incentivesOffered, // Tokens offered incentiveAmountsOffered, // Amounts offered @@ -295,6 +297,7 @@ contract TestFuzz_IPOfferCreation_RecipeMarketHub is RecipeMarketHubTestBase { 0, // Expected offer ID (starts at 0) recipeMarketHub.getOfferHash(0, marketHash, _creator, _expiry, _quantity, incentivesOffered, incentiveAmount), marketHash, // Market ID + _creator, _quantity, // Total quantity incentivesOffered, // Tokens offered incentiveAmountsOffered, // Amounts offered