@@ -8,6 +8,27 @@ import { SablierV2AirstreamCampaignLL } from "src/SablierV2AirstreamCampaignLL.s
88import { CampaignLL_Integration_Test } from "./campaignLL.t.sol " ;
99
1010contract Constructor_CampaignLL_Integration_Test is CampaignLL_Integration_Test {
11+ /// @dev Needed to prevent "Stack too deep" error
12+ struct Vars {
13+ address actualAdmin;
14+ address expectedAdmin;
15+ address actualAsset;
16+ address expectedAsset;
17+ bytes32 actualMerkleRoot;
18+ bytes32 expectedMerkleRoot;
19+ bool actualCancelable;
20+ bool expectedCancelable;
21+ uint40 actualExpiration;
22+ uint40 expectedExpiration;
23+ address actualLockupLinear;
24+ address expectedLockupLinear;
25+ uint40 actualDurationsCliff;
26+ uint40 actualDurationsTotal;
27+ LockupLinear.Durations expectedDurations;
28+ uint256 actualAllowance;
29+ uint256 expectedAllowance;
30+ }
31+
1132 function test_Constructor () external {
1233 SablierV2AirstreamCampaignLL constructedCampaignLL = new SablierV2AirstreamCampaignLL (
1334 users.admin.addr,
@@ -19,33 +40,39 @@ contract Constructor_CampaignLL_Integration_Test is CampaignLL_Integration_Test
1940 defaults.durations ()
2041 );
2142
22- address actualAdmin = constructedCampaignLL.admin ();
23- address expectedAdmin = users.admin.addr;
24- assertEq (actualAdmin, expectedAdmin, "admin " );
43+ Vars memory vars;
44+
45+ vars.actualAdmin = constructedCampaignLL.admin ();
46+ vars.expectedAdmin = users.admin.addr;
47+ assertEq (vars.actualAdmin, vars.expectedAdmin, "admin " );
48+
49+ vars.actualAsset = address (constructedCampaignLL.asset ());
50+ vars.expectedAsset = address (asset);
51+ assertEq (vars.actualAsset, vars.expectedAsset, "asset " );
2552
26- address actualAsset = address ( constructedCampaignLL.asset () );
27- address expectedAsset = address (asset );
28- assertEq (actualAsset, expectedAsset , "asset " );
53+ vars.actualMerkleRoot = constructedCampaignLL.merkleRoot ( );
54+ vars.expectedMerkleRoot = defaults. merkleRoot ( );
55+ assertEq (vars.actualMerkleRoot, vars.expectedMerkleRoot , "merkleRoot " );
2956
30- bytes32 actualMerkleRoot = constructedCampaignLL.merkleRoot ();
31- bytes32 expectedMerkleRoot = defaults.merkleRoot ();
32- assertEq (actualMerkleRoot, expectedMerkleRoot , "merkleRoot " );
57+ vars.actualCancelable = constructedCampaignLL.cancelable ();
58+ vars.expectedCancelable = defaults.CANCELABLE ();
59+ assertEq (vars.actualCancelable, vars.expectedCancelable , "cancelable " );
3360
34- bool actualCancelable = constructedCampaignLL.cancelable ();
35- bool expectedCancelable = defaults.CANCELABLE ();
36- assertEq (actualCancelable, expectedCancelable , "cancelable " );
61+ vars.actualExpiration = constructedCampaignLL.expiration ();
62+ vars.expectedExpiration = defaults.EXPIRATION ();
63+ assertEq (vars.actualExpiration, vars.expectedExpiration , "expiration " );
3764
38- uint40 actualExpiration = constructedCampaignLL.expiration ( );
39- uint40 expectedExpiration = defaults. EXPIRATION ( );
40- assertEq (actualExpiration, expectedExpiration , "expiration " );
65+ vars.actualLockupLinear = address ( constructedCampaignLL.lockupLinear () );
66+ vars.expectedLockupLinear = address (lockupLinear );
67+ assertEq (vars.actualLockupLinear, vars.expectedLockupLinear , "lockupLinear " );
4168
42- address actualLockupLinear = address (constructedCampaignLL.lockupLinear ());
43- address expectedLockupLinear = address (lockupLinear);
44- assertEq (actualLockupLinear, expectedLockupLinear, "lockupLinear " );
69+ (vars.actualDurationsCliff, vars.actualDurationsTotal) = constructedCampaignLL.durations ();
70+ vars.expectedDurations = defaults.durations ();
71+ assertEq (vars.actualDurationsCliff, vars.expectedDurations.cliff, "cliff " );
72+ assertEq (vars.actualDurationsTotal, vars.expectedDurations.total, "total " );
4573
46- (uint40 actualDurationsCliff , uint40 actualDurationsTotal ) = constructedCampaignLL.durations ();
47- LockupLinear.Durations memory expectedDurations = defaults.durations ();
48- assertEq (actualDurationsCliff, expectedDurations.cliff, "cliff " );
49- assertEq (actualDurationsTotal, expectedDurations.total, "total " );
74+ vars.actualAllowance = asset.allowance (address (constructedCampaignLL), address (lockupLinear));
75+ vars.expectedAllowance = MAX_UINT256;
76+ assertEq (vars.actualAllowance, vars.expectedAllowance, "allowance " );
5077 }
5178}
0 commit comments