@@ -14,40 +14,48 @@ contract FaucetTest is Test {
14
14
Faucet internal faucet;
15
15
Vm.Wallet internal wallet;
16
16
Vm.Wallet internal chain;
17
+ address internal owner;
17
18
address internal constant TESTER = address (0x1804c8AB1F12E6bbf3894d4083f33e07309d1f38 );
18
19
uint256 internal constant MINT_AMOUNT = 1000 * 10 ** 18 ;
20
+ string [] internal keys = ["test1 " , "test2 " ];
19
21
20
22
function setUp () public virtual {
21
23
chain = vm.createWallet ("chain " );
22
24
vm.deal (chain.addr, MINT_AMOUNT);
23
25
wallet = vm.createWallet ("user " );
24
26
FaucetDeployer faucetDeployer = new FaucetDeployer ();
25
27
faucet = faucetDeployer.run (MINT_AMOUNT / 2 );
28
+ owner = faucet.owner ();
26
29
assertEq (faucet.supply (), MINT_AMOUNT / 2 );
27
30
}
28
31
29
32
function testDripTransfer () public {
30
33
assertEq (wallet.addr.balance, 0 );
31
34
32
- faucet.drip (payable (wallet.addr));
35
+ vm.prank (owner);
36
+ faucet.drip (payable (wallet.addr), keys);
33
37
34
38
assertEq (faucet.supply (), MINT_AMOUNT / 2 - faucet.dripAmount ());
35
39
assertEq (wallet.addr.balance, faucet.dripAmount ());
36
40
}
37
41
38
42
function testDripTransferNoDelayFail () public {
39
- faucet.drip (payable (wallet.addr));
43
+ vm.prank (owner);
44
+ faucet.drip (payable (wallet.addr), keys);
40
45
41
46
vm.expectRevert (TryLater.selector );
42
- faucet.drip (payable (wallet.addr));
47
+ vm.prank (owner);
48
+ faucet.drip (payable (wallet.addr), keys);
43
49
}
44
50
45
51
function testDripTransferDelay () public {
46
- faucet.drip (payable (wallet.addr));
52
+ vm.startPrank (owner);
53
+ faucet.drip (payable (wallet.addr), keys);
47
54
48
- vm.warp (block .timestamp + (5 minutes ));
55
+ vm.warp (block .timestamp + (12 hours ));
49
56
50
- faucet.drip (payable (wallet.addr));
57
+ faucet.drip (payable (wallet.addr), keys);
58
+ vm.stopPrank ();
51
59
52
60
assertEq (wallet.addr.balance, 2 * faucet.dripAmount ());
53
61
}
0 commit comments