From 993e46a8b2e47739697ed254285af5f4f8fb74a9 Mon Sep 17 00:00:00 2001 From: Zeck Li <11781254+zeckli@users.noreply.github.com> Date: Wed, 20 Mar 2024 17:36:27 +0800 Subject: [PATCH] change tax --- .env.op-sepolia.example | 24 +++++++++++++++++++ .gas-snapshot | 32 +++++++++++++------------- Makefile | 2 +- src/Billboard/Billboard.sol | 2 +- src/test/Billboard/BillboardTest.t.sol | 2 +- 5 files changed, 43 insertions(+), 19 deletions(-) create mode 100644 .env.op-sepolia.example diff --git a/.env.op-sepolia.example b/.env.op-sepolia.example new file mode 100644 index 0000000..0db906a --- /dev/null +++ b/.env.op-sepolia.example @@ -0,0 +1,24 @@ +ETHERSCAN_API_KEY= +DEPLOYER_PRIVATE_KEY= +DEPLOYER_ADDRESS= +ETH_RPC_URL=https://.alchemy.com/v2/ +CHAIN_ID=11155420 +LOGBOOK_CONTRACT_ADDRESS= +THESPACE_CURRENCY_ADDRESS= +THESPACE_REGISTRY_ADDRESS= +THESPACE_TOKEN_IMAGE_URI= +THESPACE_ACL_MANAGER_ADDRESS= +THESPACE_MARKET_ADMIN_ADDRESS= +THESPACE_TREASURY_ADMIN_ADDRESS= +THESPACE_TREASURY_ADDRESS= +THESPACE_TREASURY_TOKENS= +THESPACE_TEAM_ADDRESS= +THESPACE_TEAM_TOKENS= +THESPACE_INCENTIVES_ADDRESS= +THESPACE_INCENTIVES_TOKENS= +THESPACE_LP_ADDRESS= +THESPACE_LP_TOKENS= +BILLBOARD_ERC20_TOKEN= +BILLBOARD_REGISTRY_ADDRESS=0x0000000000000000000000000000000000000000 +BILLBOARD_LEASE_TERM=900 +BILLBOARD_ADMIN_ADDRESS= diff --git a/.gas-snapshot b/.gas-snapshot index 8f47ffb..30eb59f 100644 --- a/.gas-snapshot +++ b/.gas-snapshot @@ -12,7 +12,7 @@ ACLManagerTest:testTransferRole() (gas: 21528) BillboardTest:testAddToWhitelist() (gas: 35114) BillboardTest:testApproveAndTransfer() (gas: 162468) BillboardTest:testCalculateTax() (gas: 21760) -BillboardTest:testCannnotWithdrawTaxIfSmallAmount(uint8) (runs: 256, μ: 519701, ~: 524563) +BillboardTest:testCannnotWithdrawTaxIfSmallAmount(uint8) (runs: 256, μ: 521197, ~: 524563) BillboardTest:testCannnotWithdrawTaxIfZero() (gas: 490384) BillboardTest:testCannotAddToWhitelistByAttacker() (gas: 9037) BillboardTest:testCannotApproveByAttacker() (gas: 130281) @@ -20,7 +20,7 @@ BillboardTest:testCannotClearAuctionIfAuctionNotEnded() (gas: 700985) BillboardTest:testCannotClearAuctionOnNewBoard() (gas: 136261) BillboardTest:testCannotMintBoardByAttacker() (gas: 13321) BillboardTest:testCannotPlaceBidByAttacker() (gas: 246293) -BillboardTest:testCannotPlaceBidTwice(uint96) (runs: 256, μ: 749802, ~: 754905) +BillboardTest:testCannotPlaceBidTwice(uint96) (runs: 256, μ: 748745, ~: 754899) BillboardTest:testCannotRemoveToWhitelistByAttacker() (gas: 9104) BillboardTest:testCannotSafeTransferByAttacker() (gas: 127438) BillboardTest:testCannotSetBoardProprtiesByAttacker() (gas: 157292) @@ -37,16 +37,16 @@ BillboardTest:testCannotWithdrawBidIfWon(uint96) (runs: 256, μ: 834282, ~: 8342 BillboardTest:testCannotWithdrawTaxByAttacker() (gas: 16687) BillboardTest:testClearAuctionIfAuctionEnded(uint96) (runs: 256, μ: 837581, ~: 837581) BillboardTest:testClearAuctionsIfAuctionEnded() (gas: 1379962) -BillboardTest:testGetBids(uint8,uint8,uint8) (runs: 256, μ: 4579559, ~: 2075259) +BillboardTest:testGetBids(uint8,uint8,uint8) (runs: 256, μ: 4728587, ~: 2077366) BillboardTest:testGetTokenURI() (gas: 154936) BillboardTest:testMintBoard() (gas: 225541) BillboardTest:testMintBoardByWhitelist() (gas: 154942) BillboardTest:testMintBoardIfOpened() (gas: 145715) BillboardTest:testPlaceBidByWhitelist() (gas: 579179) BillboardTest:testPlaceBidIfAuctionEnded() (gas: 1090700) -BillboardTest:testPlaceBidOnNewBoard(uint96) (runs: 256, μ: 618810, ~: 635089) -BillboardTest:testPlaceBidWithHigherPrice(uint96) (runs: 256, μ: 904936, ~: 913254) -BillboardTest:testPlaceBidWithSamePrices(uint96) (runs: 256, μ: 908100, ~: 918050) +BillboardTest:testPlaceBidOnNewBoard(uint96) (runs: 256, μ: 615079, ~: 635089) +BillboardTest:testPlaceBidWithHigherPrice(uint96) (runs: 256, μ: 903459, ~: 913254) +BillboardTest:testPlaceBidWithSamePrices(uint96) (runs: 256, μ: 905690, ~: 918050) BillboardTest:testPlaceBidZeroPrice() (gas: 376947) BillboardTest:testRemoveToWhitelist() (gas: 23188) BillboardTest:testSafeTransferByOperator() (gas: 141193) @@ -54,7 +54,7 @@ BillboardTest:testSetBoardProperties() (gas: 305972) BillboardTest:testSetBoardPropertiesAfterTransfer() (gas: 335477) BillboardTest:testSetIsOpened() (gas: 22661) BillboardTest:testSetTaxRate() (gas: 22887) -BillboardTest:testUpgradeRegistry() (gas: 3132522) +BillboardTest:testUpgradeRegistry() (gas: 3132722) BillboardTest:testWithdrawBid(uint96) (runs: 256, μ: 1081415, ~: 1081415) BillboardTest:testWithdrawTax(uint96) (runs: 256, μ: 597714, ~: 597714) CurationTest:testCannotCurateERC20CurateZeroAmount() (gas: 12194) @@ -74,8 +74,8 @@ DistributionTest:testCannotClaimIfAlreadyClaimed() (gas: 284835) DistributionTest:testCannotClaimIfInsufficientBalance() (gas: 394264) DistributionTest:testCannotClaimIfInvalidProof() (gas: 245236) DistributionTest:testCannotClaimIfInvalidTreeId() (gas: 243332) -DistributionTest:testCannotDropIfInsufficientAllowance(uint256) (runs: 256, μ: 212265, ~: 212278) -DistributionTest:testCannotDropIfInsufficientBalance(uint256) (runs: 256, μ: 214502, ~: 214742) +DistributionTest:testCannotDropIfInsufficientAllowance(uint256) (runs: 256, μ: 212266, ~: 212285) +DistributionTest:testCannotDropIfInsufficientBalance(uint256) (runs: 256, μ: 214503, ~: 214742) DistributionTest:testCannotDropIfZeroAmount() (gas: 148793) DistributionTest:testCannotDropTwiceWithSameTreeId() (gas: 307260) DistributionTest:testCannotSetAdminByAdmin() (gas: 17334) @@ -86,13 +86,13 @@ DistributionTest:testClaim() (gas: 414576) DistributionTest:testDrop() (gas: 568791) DistributionTest:testSetAdmin() (gas: 20239) DistributionTest:testSweep() (gas: 253087) -LogbookNFTSVGTest:testTokenURI(uint8,uint8,uint16) (runs: 256, μ: 2019505, ~: 1310779) +LogbookNFTSVGTest:testTokenURI(uint8,uint8,uint16) (runs: 256, μ: 2021610, ~: 1310779) LogbookTest:testClaim() (gas: 135608) LogbookTest:testDonate(uint96) (runs: 256, μ: 155485, ~: 156936) -LogbookTest:testDonateWithCommission(uint96,uint96) (runs: 256, μ: 150402, ~: 140444) -LogbookTest:testFork(uint96,string) (runs: 256, μ: 450748, ~: 453928) -LogbookTest:testForkRecursively(uint8,uint96) (runs: 256, μ: 4613856, ~: 1014389) -LogbookTest:testForkWithCommission(uint96,string,uint256) (runs: 256, μ: 469806, ~: 257636) +LogbookTest:testDonateWithCommission(uint96,uint96) (runs: 256, μ: 150646, ~: 140444) +LogbookTest:testFork(uint96,string) (runs: 256, μ: 450121, ~: 453928) +LogbookTest:testForkRecursively(uint8,uint96) (runs: 256, μ: 4402585, ~: 1014389) +LogbookTest:testForkWithCommission(uint96,string,uint256) (runs: 256, μ: 485550, ~: 257636) LogbookTest:testMulticall() (gas: 284999) LogbookTest:testPublicSale() (gas: 204837) LogbookTest:testPublish(string) (runs: 256, μ: 264065, ~: 263590) @@ -114,7 +114,7 @@ LogbookTest:testPublishZh5000() (gas: 607690) LogbookTest:testSetDescription() (gas: 140760) LogbookTest:testSetForkPrice() (gas: 153925) LogbookTest:testSetTitle() (gas: 168680) -LogbookTest:testSplitRoyalty(uint8,uint8,uint96) (runs: 256, μ: 2012966, ~: 636792) +LogbookTest:testSplitRoyalty(uint8,uint8,uint96) (runs: 256, μ: 2005914, ~: 801064) LogbookTest:testWithdraw() (gas: 7284400) SnapperTest:testCannotInitRegionByNotOwner() (gas: 11365) SnapperTest:testCannotReInitRegion() (gas: 14373) @@ -125,7 +125,7 @@ SnapperTest:testCannotTakeSnapshotWrongSnapshotBlock() (gas: 23899) SnapperTest:testInitRegion(uint256) (runs: 256, μ: 114408, ~: 114408) SnapperTest:testTakeSnapshot() (gas: 47831) TheSpaceTest:testBatchBid() (gas: 690308) -TheSpaceTest:testBatchSetPixels(uint16,uint8) (runs: 256, μ: 368699, ~: 370338) +TheSpaceTest:testBatchSetPixels(uint16,uint8) (runs: 256, μ: 368737, ~: 370338) TheSpaceTest:testBidDefaultedToken() (gas: 409416) TheSpaceTest:testBidExistingToken() (gas: 355023) TheSpaceTest:testBidNewToken() (gas: 301184) diff --git a/Makefile b/Makefile index 0f51021..cb91043 100644 --- a/Makefile +++ b/Makefile @@ -47,7 +47,7 @@ deploy-curation: clean ## Billboard deploy-billboard: clean - @forge create Billboard --rpc-url ${ETH_RPC_URL} --private-key ${DEPLOYER_PRIVATE_KEY} --constructor-args ${BILLBOARD_ERC20_TOKEN} ${BILLBOARD_REGISTRY_ADDRESS} ${BILLBOARD_ADMIN_ADDRESS} 7 ${BILLBOARD_LEASE_TERM} "Billboard" "BLBD" --legacy --verify --etherscan-api-key ${ETHERSCAN_API_KEY} + @forge create Billboard --rpc-url ${ETH_RPC_URL} --private-key ${DEPLOYER_PRIVATE_KEY} --constructor-args ${BILLBOARD_ERC20_TOKEN} ${BILLBOARD_REGISTRY_ADDRESS} ${BILLBOARD_ADMIN_ADDRESS} 504 ${BILLBOARD_LEASE_TERM} "Billboard" "BLBD" --legacy --verify --etherscan-api-key ${ETHERSCAN_API_KEY} deploy-billboard-distribution: clean @forge create Distribution --rpc-url ${ETH_RPC_URL} --private-key ${DEPLOYER_PRIVATE_KEY} --constructor-args ${BILLBOARD_ERC20_TOKEN} ${BILLBOARD_ADMIN_ADDRESS} --legacy --verify --etherscan-api-key ${ETHERSCAN_API_KEY} diff --git a/src/Billboard/Billboard.sol b/src/Billboard/Billboard.sol index 3744c94..f620c57 100644 --- a/src/Billboard/Billboard.sol +++ b/src/Billboard/Billboard.sol @@ -336,7 +336,7 @@ contract Billboard is IBillboard { } function calculateTax(uint256 amount_) public view returns (uint256 tax) { - tax = (amount_ * registry.taxRate()) / 100; + tax = (amount_ * registry.taxRate()) / 1000; } /// @inheritdoc IBillboard diff --git a/src/test/Billboard/BillboardTest.t.sol b/src/test/Billboard/BillboardTest.t.sol index 92f8de0..9f7a114 100644 --- a/src/test/Billboard/BillboardTest.t.sol +++ b/src/test/Billboard/BillboardTest.t.sol @@ -804,7 +804,7 @@ contract BillboardTest is BillboardTestBase { operator.setTaxRate(_taxRate); uint256 _tax = operator.calculateTax(_amount); - assertEq(_tax, (_amount * _taxRate) / 100); + assertEq(_tax, (_amount * _taxRate) / 1000); } function testSetTaxRate() public {