Skip to content

Commit a8e3631

Browse files
feat: assert and deploy scripts
1 parent d7885c8 commit a8e3631

3 files changed

Lines changed: 183 additions & 0 deletions

File tree

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
// SPDX-License-Identifier: MIT
2+
pragma solidity ^0.8.0;
3+
4+
import {Script} from "forge-std/Script.sol";
5+
import {console} from "forge-std/console.sol";
6+
import {NoPlugNoInitCounter, NoPlugInitCounter, PlugNoInitCounter, PlugInitCounter, PlugInitInitCounter, PlugNoInitInitCounter} from "../../src/deploy-counter/Counters.sol";
7+
import {CounterDeployer} from "../../src/deploy-counter/CounterDeployer.sol";
8+
9+
contract CheckCounters is Script {
10+
function run() external {
11+
NoPlugNoInitCounter noPlugNoInit = NoPlugNoInitCounter(
12+
0x1C42CABB4c2FB13fd79905738B34CC1330c9E13e
13+
);
14+
NoPlugInitCounter noPlugInit = NoPlugInitCounter(
15+
0xD3B6b2Da89b3378707bE1b23401C83fB72786A71
16+
);
17+
PlugNoInitCounter plugNoInit = PlugNoInitCounter(
18+
0x201aC62D12811f2C2A22DD78aEc77EA1403fAdfE
19+
);
20+
PlugInitCounter plugInit = PlugInitCounter(
21+
0x7ce0E3182Bbe47580278598E139251677Db8D14a
22+
);
23+
PlugInitInitCounter plugInitInit = PlugInitInitCounter(
24+
0xA66352F0eEA89Bb5686132A6477B85c53C542512
25+
);
26+
PlugNoInitInitCounter plugNoInitInit = PlugNoInitInitCounter(
27+
0xF0c397CA708ae2D9d76305926BE564591a3D5C12
28+
);
29+
30+
string memory rpc = vm.envString("ARBITRUM_SEPOLIA_RPC");
31+
vm.createSelectFork(rpc);
32+
33+
vm.startBroadcast();
34+
35+
// NoPlugNoInitCounter checks
36+
require(noPlugNoInit.counter() == 0, "Counter should be 0");
37+
(bool success, ) = address(noPlugNoInit).call(
38+
abi.encodeWithSignature("socket__()")
39+
);
40+
require(!success, "Should revert on socket__()");
41+
console.log("NoPlugNoInitCounter checks passed");
42+
43+
// NoPlugInitCounter checks
44+
require(noPlugInit.counter() == 10, "Counter should be 10");
45+
(success, ) = address(noPlugInit).call(
46+
abi.encodeWithSignature("socket__()")
47+
);
48+
require(!success, "Should revert on socket__()");
49+
console.log("NoPlugInitCounter checks passed");
50+
51+
// PlugNoInitCounter checks
52+
require(plugNoInit.counter() == 0, "Counter should be 0");
53+
require(
54+
address(plugNoInit.socket__()) != address(0),
55+
"Should return socket address"
56+
);
57+
console.log("PlugNoInitCounter checks passed");
58+
59+
// PlugInitCounter checks
60+
require(plugInit.counter() == 10, "Counter should be 10");
61+
require(
62+
address(plugInit.socket__()) != address(0),
63+
"Should return socket address"
64+
);
65+
console.log("PlugInitCounter checks passed");
66+
67+
// PlugNoInitInitCounter checks
68+
require(plugNoInitInit.counter() == 10, "Counter should be 10");
69+
require(
70+
address(plugNoInitInit.socket__()) != address(0),
71+
"Should return socket address"
72+
);
73+
console.log("PlugNoInitInitCounter checks passed");
74+
75+
// PlugInitInitCounter checks
76+
require(
77+
address(plugInitInit.socket__()) != address(0),
78+
"Should return socket address"
79+
);
80+
require(plugInitInit.counter() == 20, "Counter should be 20");
81+
console.log("PlugInitInitCounter checks passed");
82+
}
83+
}
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
// SPDX-License-Identifier: MIT
2+
pragma solidity ^0.8.0;
3+
4+
import {Script} from "forge-std/Script.sol";
5+
import {console} from "forge-std/console.sol";
6+
import {Fees} from "socket-protocol/contracts/protocol/utils/common/Structs.sol";
7+
import {ETH_ADDRESS, FAST} from "socket-protocol/contracts/protocol/utils/common/Constants.sol";
8+
import {FeesPlug} from "socket-protocol/contracts/protocol/payload-delivery/FeesPlug.sol";
9+
10+
contract DepositFees is Script {
11+
function run() external {
12+
uint256 feesAmount = 0.001 ether;
13+
address appGateway = vm.envAddress("APP_GATEWAY");
14+
FeesPlug feesPlug = FeesPlug(
15+
payable(vm.envAddress("ARBITRUM_FEES_PLUG"))
16+
);
17+
18+
string memory rpc = vm.envString("ARBITRUM_SEPOLIA_RPC");
19+
vm.createSelectFork(rpc);
20+
21+
uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY");
22+
vm.startBroadcast(deployerPrivateKey);
23+
24+
// Setting fee payment on Arbitrum Sepolia
25+
feesPlug.deposit{value: feesAmount}(
26+
ETH_ADDRESS,
27+
appGateway,
28+
feesAmount
29+
);
30+
31+
console.log("Fees deposited:", feesAmount);
32+
}
33+
}
Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
// SPDX-License-Identifier: MIT
2+
pragma solidity ^0.8.0;
3+
4+
import {Script} from "forge-std/Script.sol";
5+
import {console} from "forge-std/console.sol";
6+
import {Fees} from "socket-protocol/contracts/protocol/utils/common/Structs.sol";
7+
import {ETH_ADDRESS, FAST} from "socket-protocol/contracts/protocol/utils/common/Constants.sol";
8+
import {FeesPlug} from "socket-protocol/contracts/protocol/payload-delivery/FeesPlug.sol";
9+
10+
import {CounterAppGateway} from "../../src/deploy-counter/CounterAppGateway.sol";
11+
import {CounterDeployer} from "../../src/deploy-counter/CounterDeployer.sol";
12+
13+
contract CounterDeploy is Script {
14+
function run() external {
15+
uint256 feesAmount = 0.001 ether;
16+
address addressResolver = vm.envAddress("ADDRESS_RESOLVER");
17+
address auctionManager = vm.envAddress("AUCTION_MANAGER");
18+
FeesPlug feesPlug = FeesPlug(
19+
payable(vm.envAddress("ARBITRUM_FEES_PLUG"))
20+
);
21+
22+
string memory rpc = vm.envString("EVMX_RPC");
23+
vm.createSelectFork(rpc);
24+
25+
uint256 deployerPrivateKey = vm.envUint("PRIVATE_KEY");
26+
vm.startBroadcast(deployerPrivateKey);
27+
28+
// Setting fee payment on Arbitrum Sepolia
29+
Fees memory fees = Fees({
30+
feePoolChain: 421614,
31+
feePoolToken: ETH_ADDRESS,
32+
amount: feesAmount
33+
});
34+
35+
CounterDeployer deployer = new CounterDeployer(
36+
addressResolver,
37+
auctionManager,
38+
FAST,
39+
fees
40+
);
41+
42+
CounterAppGateway gateway = new CounterAppGateway(
43+
addressResolver,
44+
address(deployer),
45+
auctionManager,
46+
fees
47+
);
48+
49+
console.log("Contracts deployed:");
50+
console.log("CounterDeployer:", address(deployer));
51+
console.log("CounterAppGateway:", address(gateway));
52+
53+
console.log("CounterDeployer contract ids:");
54+
console.log("noPlugNoInitCounter");
55+
console.logBytes32(deployer.noPlugNoInitCounter());
56+
console.log("noPlugInitCounter");
57+
console.logBytes32(deployer.noPlugInitCounter());
58+
console.log("plugNoInitCounter");
59+
console.logBytes32(deployer.plugNoInitCounter());
60+
console.log("plugInitCounter");
61+
console.logBytes32(deployer.plugInitCounter());
62+
console.log("plugInitInitCounter");
63+
console.logBytes32(deployer.plugInitInitCounter());
64+
console.log("plugNoInitInitCounter");
65+
console.logBytes32(deployer.plugNoInitInitCounter());
66+
}
67+
}

0 commit comments

Comments
 (0)