mirror of
https://github.com/vacp2p/staking-reward-streamer.git
synced 2026-01-09 15:27:55 -05:00
chore(StakeVault.test): Improve coverage
This commit is contained in:
committed by
r4bbit
parent
7d2e4a810d
commit
f14312e842
88
.gas-report
88
.gas-report
@@ -10,7 +10,7 @@
|
||||
|-------------------------------------------------------------------------------------------+-----------------+-------+--------+--------+---------|
|
||||
| Function Name | Min | Avg | Median | Max | # Calls |
|
||||
|-------------------------------------------------------------------------------------------+-----------------+-------+--------+--------+---------|
|
||||
| fallback | 5145 | 65050 | 33119 | 193478 | 3522 |
|
||||
| fallback | 5145 | 65039 | 33119 | 193478 | 3522 |
|
||||
╰-------------------------------------------------------------------------------------------+-----------------+-------+--------+--------+---------╯
|
||||
|
||||
╭-----------------------------------------------------+-----------------+---------+---------+---------+---------╮
|
||||
@@ -66,7 +66,7 @@
|
||||
|-------------------------------------------------------------------+-----------------+---------+---------+---------+---------|
|
||||
| Function Name | Min | Avg | Median | Max | # Calls |
|
||||
|-------------------------------------------------------------------+-----------------+---------+---------+---------+---------|
|
||||
| run | 7425695 | 7425695 | 7425695 | 7425695 | 95 |
|
||||
| run | 7425695 | 7425695 | 7425695 | 7425695 | 109 |
|
||||
╰-------------------------------------------------------------------+-----------------+---------+---------+---------+---------╯
|
||||
|
||||
╭---------------------------------------------------------+-----------------+------+--------+------+---------╮
|
||||
@@ -80,7 +80,7 @@
|
||||
|---------------------------------------------------------+-----------------+------+--------+------+---------|
|
||||
| Function Name | Min | Avg | Median | Max | # Calls |
|
||||
|---------------------------------------------------------+-----------------+------+--------+------+---------|
|
||||
| activeNetworkConfig | 455 | 2048 | 455 | 4455 | 492 |
|
||||
| activeNetworkConfig | 455 | 2070 | 455 | 4455 | 520 |
|
||||
╰---------------------------------------------------------+-----------------+------+--------+------+---------╯
|
||||
|
||||
╭---------------------------------------------------------------------+-----------------+---------+---------+---------+---------╮
|
||||
@@ -124,7 +124,7 @@
|
||||
|------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| approve | 453 | 453 | 453 | 453 | 8 |
|
||||
|------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| balanceOf | 17795 | 28157 | 28160 | 28233 | 287 |
|
||||
| balanceOf | 17795 | 28159 | 28160 | 28233 | 287 |
|
||||
|------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| calculateSlashAmount | 2763 | 2801 | 2804 | 2804 | 774 |
|
||||
|------------------------------+-----------------+--------+--------+--------+---------|
|
||||
@@ -144,7 +144,7 @@
|
||||
|------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| setReward | 4845 | 144102 | 166754 | 166754 | 319 |
|
||||
|------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| slash | 4803 | 103656 | 85757 | 123125 | 520 |
|
||||
| slash | 4803 | 103578 | 85757 | 123125 | 520 |
|
||||
|------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| slashedAmountOf | 17682 | 28099 | 28120 | 28120 | 516 |
|
||||
|------------------------------+-----------------+--------+--------+--------+---------|
|
||||
@@ -232,15 +232,15 @@
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| getAccountVaults | 5230 | 5230 | 5230 | 5230 | 4 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| getVault | 13653 | 13653 | 13653 | 13653 | 4181 |
|
||||
| getVault | 13653 | 13653 | 13653 | 13653 | 4180 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| initialize | 92752 | 92752 | 92752 | 92752 | 95 |
|
||||
| initialize | 92752 | 92752 | 92752 | 92752 | 109 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| lastRewardTime | 2407 | 2407 | 2407 | 2407 | 2 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| leave | 66348 | 66348 | 66348 | 66348 | 2 |
|
||||
| leave | 66348 | 66348 | 66348 | 66348 | 3 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| lock | 7040 | 43229 | 46713 | 87673 | 1034 |
|
||||
| lock | 7040 | 43325 | 46713 | 87673 | 1035 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| migrateToVault | 9294 | 53513 | 17021 | 170715 | 4 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
@@ -252,13 +252,13 @@
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| proxiableUUID | 342 | 342 | 342 | 342 | 4 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| registerVault | 2583 | 74547 | 75107 | 75107 | 374 |
|
||||
| registerVault | 2583 | 74567 | 75107 | 75107 | 388 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| rewardEndTime | 2429 | 2429 | 2429 | 2429 | 2 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| rewardStartTime | 2364 | 2364 | 2364 | 2364 | 2 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| rewardsBalanceOf | 20295 | 24430 | 25908 | 26129 | 268 |
|
||||
| rewardsBalanceOf | 20295 | 24409 | 25908 | 26129 | 268 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| rewardsBalanceOfAccount | 62220 | 62220 | 62220 | 62220 | 1 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
@@ -266,35 +266,35 @@
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| setRewardsSupplier | 26875 | 26875 | 26875 | 26875 | 90 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| setTrustedCodehash | 24238 | 24238 | 24238 | 24238 | 95 |
|
||||
| setTrustedCodehash | 24238 | 24238 | 24238 | 24238 | 109 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| stake | 2639 | 129983 | 60725 | 228623 | 2670 |
|
||||
| stake | 2639 | 132445 | 60725 | 228623 | 2676 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| stakedBalanceOf | 2622 | 2622 | 2622 | 2622 | 1 |
|
||||
| stakedBalanceOf | 2622 | 2622 | 2622 | 2622 | 3 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| totalMP | 6805 | 8257 | 8257 | 9710 | 6 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| totalMPAccrued | 2385 | 2385 | 2385 | 2385 | 4161 |
|
||||
| totalMPAccrued | 2385 | 2385 | 2385 | 2385 | 4160 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| totalMPStaked | 2429 | 2429 | 2429 | 2429 | 4164 |
|
||||
| totalMPStaked | 2429 | 2429 | 2429 | 2429 | 4163 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| totalMaxMP | 2407 | 2407 | 2407 | 2407 | 4161 |
|
||||
| totalMaxMP | 2407 | 2407 | 2407 | 2407 | 4160 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| totalRewardsAccrued | 2407 | 2407 | 2407 | 2407 | 3 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| totalRewardsSupply | 6737 | 11068 | 11792 | 11903 | 290 |
|
||||
| totalRewardsSupply | 6737 | 11058 | 11792 | 11903 | 290 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| totalShares | 4597 | 4597 | 4597 | 4597 | 6 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| totalStaked | 2408 | 2408 | 2408 | 2408 | 4168 |
|
||||
| totalStaked | 2408 | 2408 | 2408 | 2408 | 4167 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| unstake | 9886 | 41581 | 39781 | 79550 | 271 |
|
||||
| unstake | 9886 | 41287 | 39781 | 79550 | 272 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| updateAccount | 347677 | 347677 | 347677 | 347677 | 1 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| updateGlobalState | 15820 | 25876 | 29230 | 29230 | 8 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| updateVault | 31948 | 34013 | 31948 | 110579 | 1023 |
|
||||
| updateVault | 31948 | 34490 | 31948 | 110579 | 1022 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| upgradeTo | 10279 | 10772 | 10279 | 12745 | 5 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
@@ -318,31 +318,35 @@
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| emergencyExit | 15073 | 31537 | 31535 | 48635 | 263 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| initialize | 97688 | 97688 | 97688 | 97688 | 374 |
|
||||
| initialize | 97688 | 97688 | 97688 | 97688 | 388 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| leave | 12223 | 113137 | 84120 | 356508 | 5 |
|
||||
| leave | 12223 | 99375 | 84120 | 356508 | 7 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| lock | 12151 | 58722 | 62251 | 103208 | 1035 |
|
||||
| lock | 12151 | 58773 | 62251 | 103208 | 1037 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| lockUntil | 2363 | 2363 | 2363 | 2363 | 7768 |
|
||||
| lockUntil | 2363 | 2363 | 2363 | 2363 | 7770 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| migrateToVault | 24910 | 77530 | 32637 | 219937 | 4 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| owner | 448 | 479 | 448 | 2448 | 382 |
|
||||
| owner | 448 | 483 | 448 | 2448 | 397 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| register | 12742 | 78218 | 78761 | 78761 | 374 |
|
||||
| register | 12742 | 78238 | 78761 | 78761 | 388 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| stake | 12131 | 163920 | 76290 | 284275 | 2671 |
|
||||
| stake | 2617 | 166880 | 76290 | 284275 | 2679 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| stakeManager | 393 | 393 | 393 | 393 | 373 |
|
||||
| stakeManager | 393 | 393 | 393 | 393 | 387 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| trustStakeManager | 7650 | 7650 | 7650 | 7650 | 1 |
|
||||
| trustStakeManager | 7650 | 7650 | 7650 | 7650 | 4 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| unstake | 12108 | 58192 | 55296 | 110656 | 272 |
|
||||
| unstake(uint256) | 12108 | 58009 | 55296 | 110656 | 273 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| updateLockUntil | 4432 | 20798 | 21532 | 21532 | 485 |
|
||||
| unstake(uint256,address) | 2700 | 2700 | 2700 | 2700 | 1 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| withdraw | 20817 | 20817 | 20817 | 20817 | 1 |
|
||||
| updateLockUntil | 4432 | 20782 | 21532 | 21532 | 520 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| withdraw(address,uint256) | 20817 | 25682 | 20817 | 35413 | 3 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| withdraw(address,uint256,address) | 2812 | 19196 | 19196 | 35580 | 2 |
|
||||
|----------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| withdrawFromVault | 20391 | 20391 | 20391 | 20391 | 1 |
|
||||
╰----------------------------------------+-----------------+--------+--------+--------+---------╯
|
||||
@@ -358,9 +362,9 @@
|
||||
|----------------------------------------------------+-----------------+-------+--------+--------+---------|
|
||||
| Function Name | Min | Avg | Median | Max | # Calls |
|
||||
|----------------------------------------------------+-----------------+-------+--------+--------+---------|
|
||||
| fallback | 5208 | 12817 | 7353 | 374054 | 23161 |
|
||||
| fallback | 5208 | 12836 | 7353 | 374054 | 23157 |
|
||||
|----------------------------------------------------+-----------------+-------+--------+--------+---------|
|
||||
| implementation | 346 | 2145 | 2346 | 2346 | 4847 |
|
||||
| implementation | 346 | 2134 | 2346 | 2346 | 4908 |
|
||||
╰----------------------------------------------------+-----------------+-------+--------+--------+---------╯
|
||||
|
||||
╭--------------------------------------------+-----------------+--------+--------+--------+---------╮
|
||||
@@ -374,7 +378,7 @@
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| Function Name | Min | Avg | Median | Max | # Calls |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| createVault | 231113 | 247846 | 248213 | 248213 | 373 |
|
||||
| createVault | 231113 | 247859 | 248213 | 248213 | 387 |
|
||||
|--------------------------------------------+-----------------+--------+--------+--------+---------|
|
||||
| vaultImplementation | 2345 | 2345 | 2345 | 2345 | 1 |
|
||||
╰--------------------------------------------+-----------------+--------+--------+--------+---------╯
|
||||
@@ -384,7 +388,7 @@
|
||||
+===============================================================================================================================================+
|
||||
| Deployment Cost | Deployment Size | | | | |
|
||||
|------------------------------------------------------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| 1204853 | 6015 | | | | |
|
||||
| 1204853 | 6207 | | | | |
|
||||
|------------------------------------------------------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| | | | | | |
|
||||
|------------------------------------------------------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
@@ -466,7 +470,7 @@
|
||||
|-------------------------------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| setTotalKarmaShares | 43589 | 43589 | 43589 | 43589 | 48 |
|
||||
|-------------------------------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| setUserKarmaShare | 24210 | 44107 | 44134 | 44266 | 531 |
|
||||
| setUserKarmaShare | 24210 | 44032 | 44134 | 44266 | 531 |
|
||||
|-------------------------------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| totalRewardsSupply | 2324 | 2324 | 2324 | 2324 | 48 |
|
||||
╰-------------------------------------------------------------------+-----------------+-------+--------+-------+---------╯
|
||||
@@ -490,17 +494,17 @@
|
||||
+==================================================================================================+
|
||||
| Deployment Cost | Deployment Size | | | | |
|
||||
|---------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| 770741 | 3987 | | | | |
|
||||
| 770717 | 3987 | | | | |
|
||||
|---------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| | | | | | |
|
||||
|---------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| Function Name | Min | Avg | Median | Max | # Calls |
|
||||
|---------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| approve | 29075 | 31545 | 29183 | 46259 | 2676 |
|
||||
| approve | 29075 | 31623 | 29183 | 46259 | 2690 |
|
||||
|---------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| balanceOf | 2561 | 2561 | 2561 | 2561 | 4959 |
|
||||
| balanceOf | 2561 | 2561 | 2561 | 2561 | 4966 |
|
||||
|---------------------------------------------+-----------------+-------+--------+-------+---------|
|
||||
| mint | 33964 | 37190 | 34072 | 68248 | 2685 |
|
||||
| mint | 33964 | 37387 | 34072 | 68248 | 2702 |
|
||||
╰---------------------------------------------+-----------------+-------+--------+-------+---------╯
|
||||
|
||||
╭-----------------------------------------------------------------------------+-----------------+--------+--------+--------+---------╮
|
||||
|
||||
@@ -16,15 +16,15 @@ EmergencyExitTest:test_EmergencyExitToAlternateAddress() (gas: 479110)
|
||||
EmergencyExitTest:test_EmergencyExitWithLock() (gas: 452444)
|
||||
EmergencyExitTest:test_EmergencyExitWithRewards() (gas: 484810)
|
||||
EmergencyExitTest:test_OnlyOwnerCanEnableEmergencyMode() (gas: 39176)
|
||||
FuzzTests:testFuzz_AccrueMP(uint128,uint64,uint64) (runs: 1006, μ: 581521, ~: 549037)
|
||||
FuzzTests:testFuzz_AccrueMP_Relock(uint128,uint64,uint64,uint64) (runs: 1006, μ: 806405, ~: 777234)
|
||||
FuzzTests:testFuzz_EmergencyExit(uint256,uint256) (runs: 1000, μ: 588178, ~: 578267)
|
||||
FuzzTests:testFuzz_Lock(uint256,uint64) (runs: 1006, μ: 961274, ~: 961235)
|
||||
FuzzTests:testFuzz_Relock(uint256,uint64,uint64) (runs: 1006, μ: 598321, ~: 574225)
|
||||
FuzzTests:testFuzz_Rewards(uint256,uint256,uint256,uint16,uint16) (runs: 1000, μ: 650441, ~: 653254)
|
||||
FuzzTests:testFuzz_Stake(uint256,uint64) (runs: 1006, μ: 376307, ~: 346086)
|
||||
FuzzTests:testFuzz_Unstake(uint128,uint64,uint16,uint128) (runs: 1006, μ: 801126, ~: 780593)
|
||||
FuzzTests:testFuzz_UpdateVault(uint128,uint64,uint64) (runs: 1006, μ: 581544, ~: 549060)
|
||||
FuzzTests:testFuzz_AccrueMP(uint128,uint64,uint64) (runs: 1024, μ: 584053, ~: 549046)
|
||||
FuzzTests:testFuzz_AccrueMP_Relock(uint128,uint64,uint64,uint64) (runs: 1024, μ: 809067, ~: 777235)
|
||||
FuzzTests:testFuzz_EmergencyExit(uint256,uint256) (runs: 1007, μ: 588195, ~: 578267)
|
||||
FuzzTests:testFuzz_Lock(uint256,uint64) (runs: 1025, μ: 961448, ~: 961235)
|
||||
FuzzTests:testFuzz_Relock(uint256,uint64,uint64) (runs: 1025, μ: 601095, ~: 574234)
|
||||
FuzzTests:testFuzz_Rewards(uint256,uint256,uint256,uint16,uint16) (runs: 1001, μ: 650436, ~: 653254)
|
||||
FuzzTests:testFuzz_Stake(uint256,uint64) (runs: 1025, μ: 378939, ~: 346089)
|
||||
FuzzTests:testFuzz_Unstake(uint128,uint64,uint16,uint128) (runs: 1024, μ: 803140, ~: 780598)
|
||||
FuzzTests:testFuzz_UpdateVault(uint128,uint64,uint64) (runs: 1024, μ: 584076, ~: 549069)
|
||||
IntegrationTest:testStakeFoo() (gas: 2348931)
|
||||
KarmaNFTTest:testApproveNotAllowed() (gas: 10507)
|
||||
KarmaNFTTest:testGetApproved() (gas: 10531)
|
||||
@@ -67,7 +67,7 @@ LeaveTest:test_LeaveShouldKeepFundsLockedInStakeVault() (gas: 9938411)
|
||||
LeaveTest:test_LeaveShouldProperlyUpdateAccounting() (gas: 10011059)
|
||||
LeaveTest:test_RevertWhenStakeManagerIsTrusted() (gas: 333238)
|
||||
LeaveTest:test_TrustNewStakeManager() (gas: 9944491)
|
||||
LockTest:test_LockFailsWithInvalidPeriod(uint256) (runs: 1006, μ: 384561, ~: 384588)
|
||||
LockTest:test_LockFailsWithInvalidPeriod(uint256) (runs: 1025, μ: 384561, ~: 384588)
|
||||
LockTest:test_LockFailsWithNoStake() (gas: 89700)
|
||||
LockTest:test_LockFailsWithZero() (gas: 343310)
|
||||
LockTest:test_LockMultipleTimesExceedMaxLock() (gas: 746921)
|
||||
@@ -131,7 +131,7 @@ SetRewardTest:test_RevertWhen_SenderIsNotOperator() (gas: 61893)
|
||||
SlashAmountOfTest:testAddKarmaDistributorOnlyAdmin() (gas: 438224)
|
||||
SlashAmountOfTest:testBalanceOf() (gas: 456642)
|
||||
SlashAmountOfTest:testBalanceOfWithNoSystemTotalKarma() (gas: 83783)
|
||||
SlashAmountOfTest:testFuzz_SlashAmountOf(uint256,uint256,uint256) (runs: 1002, μ: 408298, ~: 409081)
|
||||
SlashAmountOfTest:testFuzz_SlashAmountOf(uint256,uint256,uint256) (runs: 1004, μ: 408220, ~: 409081)
|
||||
SlashAmountOfTest:testMintOnlyAdmin() (gas: 429075)
|
||||
SlashAmountOfTest:testRemoveKarmaDistributorOnlyOwner() (gas: 163437)
|
||||
SlashAmountOfTest:testRemoveUnknownKarmaDistributor() (gas: 41654)
|
||||
@@ -141,7 +141,7 @@ SlashAmountOfTest:test_SlashAmountOf() (gas: 327608)
|
||||
SlashTest:testAddKarmaDistributorOnlyAdmin() (gas: 438270)
|
||||
SlashTest:testBalanceOf() (gas: 456648)
|
||||
SlashTest:testBalanceOfWithNoSystemTotalKarma() (gas: 83827)
|
||||
SlashTest:testFuzz_Slash(uint256) (runs: 1006, μ: 280204, ~: 280146)
|
||||
SlashTest:testFuzz_Slash(uint256) (runs: 1025, μ: 280205, ~: 280146)
|
||||
SlashTest:testMintOnlyAdmin() (gas: 429131)
|
||||
SlashTest:testRemoveKarmaDistributorOnlyOwner() (gas: 163461)
|
||||
SlashTest:testRemoveRewardDistributorShouldReduceSlashAmount() (gas: 610762)
|
||||
@@ -173,6 +173,20 @@ StakeTest:test_StakeOneAccountReachingMPLimit() (gas: 714792)
|
||||
StakeTest:test_StakeOneAccountWithMaxLockUp() (gas: 381583)
|
||||
StakeTest:test_StakeOneAccountWithMinLockUp() (gas: 382223)
|
||||
StakeTest:test_StakeOneAccountWithRandomLockUp() (gas: 382268)
|
||||
StakeVaultCoverageTest:testOwner() (gas: 15413)
|
||||
StakeVaultCoverageTest:test_LeaveRevertsWhenManagerTrusted() (gas: 46970)
|
||||
StakeVaultCoverageTest:test_LeaveTransfersAllFundsAfterUntrustingManager() (gas: 423892)
|
||||
StakeVaultCoverageTest:test_LockRevertsIfManagerNotTrusted() (gas: 79014)
|
||||
StakeVaultCoverageTest:test_LockSetsLockUntilTimestamp() (gas: 431382)
|
||||
StakeVaultCoverageTest:test_StakeRevertsIfManagerNotTrusted() (gas: 79220)
|
||||
StakeVaultCoverageTest:test_StakeRevertsIfNotOwner() (gas: 37239)
|
||||
StakeVaultCoverageTest:test_StakeTransfersTokensToVault() (gas: 343535)
|
||||
StakeVaultCoverageTest:test_UnstakeRevertsWithInvalidDestination() (gas: 323361)
|
||||
StakeVaultCoverageTest:test_UnstakeTransfersTokensBackToOwner() (gas: 389377)
|
||||
StakeVaultCoverageTest:test_WithdrawOtherTokenTransfersToDestination() (gas: 142411)
|
||||
StakeVaultCoverageTest:test_WithdrawRevertsIfInsufficientAvailableBalance() (gas: 343789)
|
||||
StakeVaultCoverageTest:test_WithdrawRevertsIfInvalidDestination() (gas: 111219)
|
||||
StakeVaultCoverageTest:test_WithdrawTransfersGenericTokenToOwner() (gas: 139759)
|
||||
StakeVaultMigrationTest:testMigrateToVault() (gas: 1157152)
|
||||
StakeVaultMigrationTest:test_RevertWhenDestinationVaultIsNotRegistered() (gas: 166681)
|
||||
StakeVaultMigrationTest:test_RevertWhenMigrationVaultNotEmpty() (gas: 631911)
|
||||
@@ -209,4 +223,4 @@ UpgradeTest:test_RevertWhenNotOwner() (gas: 3696209)
|
||||
UpgradeTest:test_UpgradeStakeManager() (gas: 9855347)
|
||||
VaultRegistrationTest:test_VaultRegistration() (gas: 90138)
|
||||
WithdrawTest:testOwner() (gas: 15365)
|
||||
WithdrawTest:test_CannotWithdrawStakedFunds() (gas: 373408)
|
||||
WithdrawTest:test_CannotWithdrawStakedFunds() (gas: 373396)
|
||||
@@ -12,25 +12,23 @@ import { MockToken } from "./mocks/MockToken.sol";
|
||||
|
||||
contract StakeVaultTest is Test {
|
||||
VaultFactory internal vaultFactory;
|
||||
|
||||
StakeManager internal streamer;
|
||||
|
||||
StakeVault internal stakeVault;
|
||||
|
||||
MockToken internal rewardToken;
|
||||
|
||||
MockToken internal stakingToken;
|
||||
|
||||
MockToken internal otherToken;
|
||||
address internal alice = makeAddr("alice");
|
||||
address internal bob = makeAddr("bob");
|
||||
|
||||
function _createTestVault(address owner) internal returns (StakeVault vault) {
|
||||
function _createTestVault(address owner) internal returns (StakeVault stakeVault) {
|
||||
vm.prank(owner);
|
||||
vault = vaultFactory.createVault();
|
||||
stakeVault = vaultFactory.createVault();
|
||||
}
|
||||
|
||||
function setUp() public virtual {
|
||||
rewardToken = new MockToken("Reward Token", "RT");
|
||||
stakingToken = new MockToken("Staking Token", "ST");
|
||||
otherToken = new MockToken("Other Token", "OT");
|
||||
|
||||
DeployStakeManagerScript deployment = new DeployStakeManagerScript();
|
||||
(StakeManager stakeManager, VaultFactory _vaultFactory, DeploymentConfig deploymentConfig) = deployment.run();
|
||||
@@ -82,3 +80,125 @@ contract WithdrawTest is StakeVaultTest {
|
||||
stakeVault.withdraw(stakingToken, 10e18);
|
||||
}
|
||||
}
|
||||
|
||||
contract StakeVaultCoverageTest is StakeVaultTest {
|
||||
/*////////////////////////////////////////////////////////////
|
||||
TESTES PARA stake()
|
||||
////////////////////////////////////////////////////////////*/
|
||||
|
||||
function test_StakeTransfersTokensToVault() public {
|
||||
vm.prank(alice);
|
||||
stakeVault.stake(1e18, 90 days);
|
||||
assertEq(stakingToken.balanceOf(address(stakeVault)), 1e18);
|
||||
assertEq(streamer.stakedBalanceOf(address(stakeVault)), 1e18);
|
||||
}
|
||||
|
||||
function test_StakeRevertsIfNotOwner() public {
|
||||
vm.prank(bob);
|
||||
vm.expectRevert("Ownable: caller is not the owner");
|
||||
stakeVault.stake(1e18, 90 days);
|
||||
}
|
||||
|
||||
function test_StakeRevertsIfManagerNotTrusted() public {
|
||||
vm.prank(alice);
|
||||
stakeVault.trustStakeManager(address(0xDEAD));
|
||||
vm.prank(alice);
|
||||
vm.expectRevert(StakeVault.StakeVault__StakeManagerImplementationNotTrusted.selector);
|
||||
stakeVault.stake(1e18, 3600);
|
||||
}
|
||||
|
||||
/*////////////////////////////////////////////////////////////
|
||||
TESTES PARA lock()
|
||||
////////////////////////////////////////////////////////////*/
|
||||
|
||||
function test_LockSetsLockUntilTimestamp() public {
|
||||
uint256 delta = 90 days;
|
||||
vm.startPrank(alice);
|
||||
stakeVault.stake(1e18, 0); // Stake some tokens firstq
|
||||
stakeVault.lock(delta);
|
||||
uint256 expected = block.timestamp + delta;
|
||||
assertEq(stakeVault.lockUntil(), expected);
|
||||
}
|
||||
|
||||
function test_LockRevertsIfManagerNotTrusted() public {
|
||||
vm.prank(alice);
|
||||
stakeVault.trustStakeManager(address(0xBEEF));
|
||||
vm.prank(alice);
|
||||
vm.expectRevert(StakeVault.StakeVault__StakeManagerImplementationNotTrusted.selector);
|
||||
stakeVault.lock(3600);
|
||||
}
|
||||
|
||||
/*////////////////////////////////////////////////////////////
|
||||
TESTES PARA unstake()
|
||||
////////////////////////////////////////////////////////////*/
|
||||
|
||||
function test_UnstakeTransfersTokensBackToOwner() public {
|
||||
uint256 startBalance = stakingToken.balanceOf(alice);
|
||||
vm.prank(alice);
|
||||
stakeVault.stake(5e18, 0);
|
||||
vm.prank(alice);
|
||||
stakeVault.unstake(5e18);
|
||||
assertEq(stakingToken.balanceOf(alice), startBalance);
|
||||
}
|
||||
|
||||
function test_UnstakeRevertsWithInvalidDestination() public {
|
||||
vm.prank(alice);
|
||||
stakeVault.stake(1e18, 0);
|
||||
vm.prank(alice);
|
||||
vm.expectRevert(StakeVault.StakeVault__InvalidDestinationAddress.selector);
|
||||
stakeVault.unstake(1e18, address(0));
|
||||
}
|
||||
|
||||
/*////////////////////////////////////////////////////////////
|
||||
TESTES PARA leave()
|
||||
////////////////////////////////////////////////////////////*/
|
||||
|
||||
function test_LeaveRevertsWhenManagerTrusted() public {
|
||||
vm.prank(alice);
|
||||
vm.expectRevert(StakeVault.StakeVault__NotAllowedToLeave.selector);
|
||||
stakeVault.leave(alice);
|
||||
}
|
||||
|
||||
function test_LeaveTransfersAllFundsAfterUntrustingManager() public {
|
||||
vm.prank(alice);
|
||||
stakeVault.stake(2e18, 0);
|
||||
vm.prank(alice);
|
||||
stakeVault.trustStakeManager(address(1));
|
||||
vm.prank(alice);
|
||||
stakeVault.leave(bob);
|
||||
assertEq(stakingToken.balanceOf(bob), 2e18);
|
||||
}
|
||||
|
||||
/*////////////////////////////////////////////////////////////
|
||||
TESTES PARA withdraw()
|
||||
////////////////////////////////////////////////////////////*/
|
||||
|
||||
function test_WithdrawOtherTokenTransfersToDestination() public {
|
||||
otherToken.mint(address(stakeVault), 1e18);
|
||||
vm.prank(alice);
|
||||
stakeVault.withdraw(otherToken, 1e18, bob);
|
||||
assertEq(otherToken.balanceOf(bob), 1e18);
|
||||
}
|
||||
|
||||
function test_WithdrawRevertsIfInsufficientAvailableBalance() public {
|
||||
vm.prank(alice);
|
||||
stakeVault.stake(3e18, 0);
|
||||
vm.prank(alice);
|
||||
vm.expectRevert(StakeVault.StakeVault__NotEnoughAvailableBalance.selector);
|
||||
stakeVault.withdraw(stakingToken, 3e18);
|
||||
}
|
||||
|
||||
function test_WithdrawTransfersGenericTokenToOwner() public {
|
||||
otherToken.mint(address(stakeVault), 5e17);
|
||||
vm.prank(alice);
|
||||
stakeVault.withdraw(otherToken, 5e17);
|
||||
assertEq(otherToken.balanceOf(alice), 5e17);
|
||||
}
|
||||
|
||||
function test_WithdrawRevertsIfInvalidDestination() public {
|
||||
otherToken.mint(address(stakeVault), 1e18);
|
||||
vm.prank(alice);
|
||||
vm.expectRevert(StakeVault.StakeVault__InvalidDestinationAddress.selector);
|
||||
stakeVault.withdraw(otherToken, 1e18, address(0));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user