Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Billboard v2 #141

Merged
merged 24 commits into from
Aug 20, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
24 commits
Select commit Hold shift + click to select a range
ee08b27
feat(billboard): revise interface
robertu7 Jun 27, 2024
3e3f940
feat(billboard): revise IBillboard.sol
robertu7 Jun 28, 2024
d01b9e9
feat(billboard): revise Billboard.sol
robertu7 Jun 28, 2024
4bed635
feat(billboard): revise auction functions
robertu7 Jun 30, 2024
1ce6b87
feat(billboard): remove unused and rename
robertu7 Jun 30, 2024
1dd5664
test(billboard): revise BillboardTestBase
robertu7 Jun 30, 2024
380ba7c
test(billboard): revise tests for board, ERC20 & ERC721 functions
robertu7 Jul 1, 2024
f84f906
test(billboard): revise tests for auction & bids
robertu7 Jul 2, 2024
b0aae9c
test(billboard): add tests for auction & bids
robertu7 Jul 3, 2024
db48341
test(billboard): add more tests for withdraw bids
robertu7 Jul 3, 2024
0ab131e
test(billboard): add tests for getBlockFromEpoch and getEpochFromBlock
robertu7 Jul 3, 2024
28e9c6a
test(billboard): add tests for calculateTax
robertu7 Jul 3, 2024
25eb421
test(billboard): add tests for withdrawTax
robertu7 Jul 3, 2024
aedeae6
feat(billboard): allow to set startedAt on mintBoard
robertu7 Jul 4, 2024
ee35f02
feat(billboard): support to close board
robertu7 Jul 4, 2024
5e3029d
feat(billboard): rename BILLBOARD_ERC20_TOKEN to BILLBOARD_CURRENCY_T…
robertu7 Jul 4, 2024
b9dcf1d
docs: update Billboard contract addresses in OP Sepolia
robertu7 Jul 5, 2024
0a39ceb
feat(billboard): return cleared auctions instead of empty
robertu7 Jul 22, 2024
d83e7df
feat(billboard): add `getBidderBids`
robertu7 Aug 7, 2024
115eab6
feat(billboard): make `getBiddersBids` returns `epochs`
robertu7 Aug 13, 2024
61774f0
feat(billboard): allow to enable/disable board whitelist
robertu7 Aug 15, 2024
93f3319
feat(billboard): add testPlaceBidIfBoardWhitelistDisabled
robertu7 Aug 15, 2024
21a13cb
feat(billboard): add `getLatestEpoch` and `clearLastAuction`
robertu7 Aug 15, 2024
36926d8
feat(billboard): remove unused "payable"
robertu7 Aug 15, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions .env.local.example
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ THESPACE_INCENTIVES_ADDRESS=
THESPACE_INCENTIVES_TOKENS=
THESPACE_LP_ADDRESS=
THESPACE_LP_TOKENS=
BILLBOARD_ERC20_TOKEN=
BILLBOARD_CURRENCY_TOKEN=
BILLBOARD_REGISTRY_ADDRESS=0x0000000000000000000000000000000000000000
BILLBOARD_LEASE_TERM=
BILLBOARD_ADMIN_ADDRESS=
3 changes: 1 addition & 2 deletions .env.op-mainnet.example
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ THESPACE_INCENTIVES_ADDRESS=
THESPACE_INCENTIVES_TOKENS=
THESPACE_LP_ADDRESS=
THESPACE_LP_TOKENS=
BILLBOARD_ERC20_TOKEN=
BILLBOARD_CURRENCY_TOKEN=
BILLBOARD_REGISTRY_ADDRESS=0x0000000000000000000000000000000000000000
BILLBOARD_LEASE_TERM=900
BILLBOARD_ADMIN_ADDRESS=
3 changes: 1 addition & 2 deletions .env.op-sepolia.example
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ THESPACE_INCENTIVES_ADDRESS=
THESPACE_INCENTIVES_TOKENS=
THESPACE_LP_ADDRESS=
THESPACE_LP_TOKENS=
BILLBOARD_ERC20_TOKEN=
BILLBOARD_CURRENCY_TOKEN=
BILLBOARD_REGISTRY_ADDRESS=0x0000000000000000000000000000000000000000
BILLBOARD_LEASE_TERM=900
BILLBOARD_ADMIN_ADDRESS=
3 changes: 1 addition & 2 deletions .env.polygon-mainnet.example
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ THESPACE_INCENTIVES_ADDRESS=
THESPACE_INCENTIVES_TOKENS=
THESPACE_LP_ADDRESS=
THESPACE_LP_TOKENS=
BILLBOARD_ERC20_TOKEN=
BILLBOARD_CURRENCY_TOKEN=
BILLBOARD_REGISTRY_ADDRESS=0x0000000000000000000000000000000000000000
BILLBOARD_LEASE_TERM=
BILLBOARD_ADMIN_ADDRESS=
3 changes: 1 addition & 2 deletions .env.polygon-mumbai.example
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,6 @@ THESPACE_INCENTIVES_ADDRESS=
THESPACE_INCENTIVES_TOKENS=
THESPACE_LP_ADDRESS=
THESPACE_LP_TOKENS=
BILLBOARD_ERC20_TOKEN=0x0FA8781a83E46826621b3BC094Ea2A0212e71B23
BILLBOARD_CURRENCY_TOKEN=0x0FA8781a83E46826621b3BC094Ea2A0212e71B23
BILLBOARD_REGISTRY_ADDRESS=0x0000000000000000000000000000000000000000
BILLBOARD_LEASE_TERM=900
BILLBOARD_ADMIN_ADDRESS=
205 changes: 104 additions & 101 deletions .gas-snapshot
Original file line number Diff line number Diff line change
Expand Up @@ -9,54 +9,57 @@ ACLManagerTest:testGrantRole() (gas: 23547)
ACLManagerTest:testRenounceRole() (gas: 27841)
ACLManagerTest:testRoles() (gas: 15393)
ACLManagerTest:testTransferRole() (gas: 21528)
BillboardTest:testAddToWhitelist() (gas: 35114)
BillboardTest:testApproveAndTransfer() (gas: 162468)
BillboardTest:testCalculateTax() (gas: 21760)
BillboardTest:testCannnotWithdrawTaxIfSmallAmount(uint8) (runs: 256, μ: 521197, ~: 524563)
BillboardTest:testCannnotWithdrawTaxIfZero() (gas: 490384)
BillboardTest:testCannotAddToWhitelistByAttacker() (gas: 9037)
BillboardTest:testCannotApproveByAttacker() (gas: 130281)
BillboardTest:testCannotClearAuctionIfAuctionNotEnded() (gas: 700985)
BillboardTest:testCannotClearAuctionOnNewBoard() (gas: 136261)
BillboardTest:testCannotMintBoardByAttacker() (gas: 13321)
BillboardTest:testCannotPlaceBidByAttacker() (gas: 246293)
BillboardTest:testCannotPlaceBidTwice(uint96) (runs: 256, μ: 748745, ~: 754899)
BillboardTest:testCannotRemoveToWhitelistByAttacker() (gas: 9104)
BillboardTest:testCannotSafeTransferByAttacker() (gas: 127438)
BillboardTest:testCannotSetBoardProprtiesByAttacker() (gas: 157292)
BillboardTest:testCannotSetIsOpenedByAttacker() (gas: 8994)
BillboardTest:testCannotSetTaxRateByAttacker() (gas: 9006)
BillboardTest:testCannotTransferByOperator() (gas: 132771)
BillboardTest:testCannotTransferToZeroAddress() (gas: 128258)
BillboardTest:testCannotUpgradeRegistryByAttacker() (gas: 9128)
BillboardTest:testCannotWithBidTwice(uint96) (runs: 256, μ: 1079907, ~: 1079907)
BillboardTest:testCannotWithdrawBidIfAuctionNotCleared(uint96) (runs: 256, μ: 911089, ~: 911089)
BillboardTest:testCannotWithdrawBidIfAuctionNotEnded(uint96) (runs: 256, μ: 725782, ~: 725782)
BillboardTest:testCannotWithdrawBidIfNotFound() (gas: 428052)
BillboardTest:testCannotWithdrawBidIfWon(uint96) (runs: 256, μ: 834282, ~: 834282)
BillboardTest:testCannotWithdrawTaxByAttacker() (gas: 16687)
BillboardTest:testClearAuctionIfAuctionEnded(uint96) (runs: 256, μ: 837581, ~: 837581)
BillboardTest:testClearAuctionsIfAuctionEnded() (gas: 1379962)
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, μ: 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)
BillboardTest:testSetBoardProperties() (gas: 305972)
BillboardTest:testSetBoardPropertiesAfterTransfer() (gas: 335477)
BillboardTest:testSetIsOpened() (gas: 22661)
BillboardTest:testSetTaxRate() (gas: 22887)
BillboardTest:testUpgradeRegistry() (gas: 3132722)
BillboardTest:testWithdrawBid(uint96) (runs: 256, μ: 1081415, ~: 1081415)
BillboardTest:testWithdrawTax(uint96) (runs: 256, μ: 597714, ~: 597714)
BillboardTest:testApproveAndTransfer() (gas: 258132)
BillboardTest:testCalculateTax() (gas: 539822)
BillboardTest:testCannnotWithdrawTaxIfZero() (gas: 20140)
BillboardTest:testCannotApproveByAttacker() (gas: 224303)
BillboardTest:testCannotCalculateTax() (gas: 218883)
BillboardTest:testCannotClearAuctionIfAuctionNotEnded() (gas: 255576)
BillboardTest:testCannotClearAuctionIfClosed() (gas: 252825)
BillboardTest:testCannotClearAuctionIfNoBid() (gas: 260776)
BillboardTest:testCannotGetBlockFromEpoch() (gas: 8600)
BillboardTest:testCannotGetEpochFromBlock() (gas: 18393)
BillboardTest:testCannotPlaceBidIfAuctionEnded() (gas: 282966)
BillboardTest:testCannotPlaceBidIfClosed() (gas: 252745)
BillboardTest:testCannotPlaceBidIfNotWhitelisted() (gas: 465624)
BillboardTest:testCannotSafeTransferByAttacker() (gas: 221525)
BillboardTest:testCannotSetBoardByAttacker() (gas: 229589)
BillboardTest:testCannotSetBoardByOwner() (gas: 362030)
BillboardTest:testCannotSetClosedByAttacker() (gas: 228479)
BillboardTest:testCannotSetWhitelistByAttacker() (gas: 228664)
BillboardTest:testCannotTransferByOperator() (gas: 226771)
BillboardTest:testCannotTransferToZeroAddress() (gas: 222258)
BillboardTest:testCannotUpgradeRegistryByAttacker() (gas: 9017)
BillboardTest:testCannotWithdrawBidIfAuctionNotEndedOrCleared(uint96) (runs: 256, μ: 632850, ~: 632850)
BillboardTest:testCannotWithdrawBidIfNotFound(uint96) (runs: 256, μ: 750346, ~: 750346)
BillboardTest:testCannotWithdrawBidIfWon(uint96) (runs: 256, μ: 1026516, ~: 1026516)
BillboardTest:testCannotWithdrawBidTwice(uint96) (runs: 256, μ: 1111002, ~: 1111002)
BillboardTest:testClearAuction(uint96) (runs: 256, μ: 731815, ~: 731815)
BillboardTest:testClearAuctionIfAlreadyCleared() (gas: 738895)
BillboardTest:testClearAuctions() (gas: 1315317)
BillboardTest:testClearLastAuction(uint96) (runs: 256, μ: 732739, ~: 732739)
BillboardTest:testClearLastAuctions() (gas: 1332619)
BillboardTest:testGetBidderBids(uint8,uint8,uint8) (runs: 256, μ: 1508601, ~: 1140537)
BillboardTest:testGetBids(uint8,uint8,uint8) (runs: 256, μ: 8312589, ~: 6311372)
BillboardTest:testGetBlockFromEpoch() (gas: 16893)
BillboardTest:testGetEpochFromBlock() (gas: 17903)
BillboardTest:testGetTokenURI() (gas: 391345)
BillboardTest:testMintBoard() (gas: 585666)
BillboardTest:testPlaceBid(uint96) (runs: 256, μ: 840080, ~: 840702)
BillboardTest:testPlaceBidIfBoardWhitelistDisabled() (gas: 598166)
BillboardTest:testPlaceBidWithHigherPrice(uint96) (runs: 256, μ: 1011527, ~: 1011532)
BillboardTest:testPlaceBidWithSamePrices(uint96) (runs: 256, μ: 908843, ~: 909776)
BillboardTest:testPlaceBidZeroPrice() (gas: 432705)
BillboardTest:testSafeTransferByOperator() (gas: 235259)
BillboardTest:testSetBidURIs() (gas: 659834)
BillboardTest:testSetBoardByCreator() (gas: 342395)
BillboardTest:testSetBoardWhitelistDisabled() (gas: 244401)
BillboardTest:testSetClosed() (gas: 241110)
BillboardTest:testSetWhitelist() (gas: 245426)
BillboardTest:testUpgradeRegistry() (gas: 3924811)
BillboardTest:testWithdrawBid(uint96) (runs: 256, μ: 1098966, ~: 1098966)
BillboardTest:testWithdrawBidIfClosed(uint96) (runs: 256, μ: 697036, ~: 697036)
BillboardTest:testWithdrawTax(uint96) (runs: 256, μ: 737116, ~: 737116)
CurationTest:testCannotCurateERC20CurateZeroAmount() (gas: 12194)
CurationTest:testCannotCurateERC20EmptyURI() (gas: 15797)
CurationTest:testCannotCurateERC20IfNotApproval() (gas: 21624)
Expand All @@ -74,8 +77,8 @@ DistributionTest:testCannotClaimIfAlreadyClaimed() (gas: 284835)
DistributionTest:testCannotClaimIfInsufficientBalance() (gas: 394264)
DistributionTest:testCannotClaimIfInvalidProof() (gas: 245236)
DistributionTest:testCannotClaimIfInvalidTreeId() (gas: 243332)
DistributionTest:testCannotDropIfInsufficientAllowance(uint256) (runs: 256, μ: 212266, ~: 212285)
DistributionTest:testCannotDropIfInsufficientBalance(uint256) (runs: 256, μ: 214503, ~: 214742)
DistributionTest:testCannotDropIfInsufficientAllowance(uint256) (runs: 256, μ: 212269, ~: 212284)
DistributionTest:testCannotDropIfInsufficientBalance(uint256) (runs: 256, μ: 214708, ~: 214740)
DistributionTest:testCannotDropIfZeroAmount() (gas: 148793)
DistributionTest:testCannotDropTwiceWithSameTreeId() (gas: 307260)
DistributionTest:testCannotSetAdminByAdmin() (gas: 17334)
Expand All @@ -86,15 +89,15 @@ DistributionTest:testClaim() (gas: 414576)
DistributionTest:testDrop() (gas: 568791)
DistributionTest:testSetAdmin() (gas: 20239)
DistributionTest:testSweep() (gas: 253087)
LogbookNFTSVGTest:testTokenURI(uint8,uint8,uint16) (runs: 256, μ: 2021610, ~: 1310779)
LogbookNFTSVGTest:testTokenURI(uint8,uint8,uint16) (runs: 256, μ: 2613180, ~: 1746428)
LogbookTest:testClaim() (gas: 135608)
LogbookTest:testDonate(uint96) (runs: 256, μ: 155485, ~: 156936)
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:testDonate(uint96) (runs: 256, μ: 156549, ~: 156936)
LogbookTest:testDonateWithCommission(uint96,uint96) (runs: 256, μ: 146644, ~: 140444)
LogbookTest:testFork(uint96,string) (runs: 256, μ: 452537, ~: 453928)
LogbookTest:testForkRecursively(uint8,uint96) (runs: 256, μ: 5351224, ~: 1801537)
LogbookTest:testForkWithCommission(uint96,string,uint256) (runs: 256, μ: 342465, ~: 257636)
LogbookTest:testMulticall() (gas: 284999)
LogbookTest:testPublicSale() (gas: 204837)
LogbookTest:testPublicSale() (gas: 207337)
LogbookTest:testPublish(string) (runs: 256, μ: 264065, ~: 263590)
LogbookTest:testPublishEn1000() (gas: 243477)
LogbookTest:testPublishEn140() (gas: 221241)
Expand All @@ -114,7 +117,7 @@ LogbookTest:testPublishZh5000() (gas: 607690)
LogbookTest:testSetDescription() (gas: 140760)
LogbookTest:testSetForkPrice() (gas: 153925)
LogbookTest:testSetTitle() (gas: 168680)
LogbookTest:testSplitRoyalty(uint8,uint8,uint96) (runs: 256, μ: 2005914, ~: 801064)
LogbookTest:testSplitRoyalty(uint8,uint8,uint96) (runs: 256, μ: 1959072, ~: 965338)
LogbookTest:testWithdraw() (gas: 7284400)
SnapperTest:testCannotInitRegionByNotOwner() (gas: 11365)
SnapperTest:testCannotReInitRegion() (gas: 14373)
Expand All @@ -124,54 +127,54 @@ SnapperTest:testCannotTakeSnapshotWrongLastBlock() (gas: 49242)
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, μ: 368737, ~: 370338)
TheSpaceTest:testBidDefaultedToken() (gas: 409416)
TheSpaceTest:testBidExistingToken() (gas: 355023)
TheSpaceTest:testBidNewToken() (gas: 301184)
TheSpaceTest:testCanTransferFromIfSettleTax() (gas: 355069)
TheSpaceTest:testBatchBid() (gas: 695308)
TheSpaceTest:testBatchSetPixels(uint16,uint8) (runs: 256, μ: 371399, ~: 372904)
TheSpaceTest:testBidDefaultedToken() (gas: 413399)
TheSpaceTest:testBidExistingToken() (gas: 360023)
TheSpaceTest:testBidNewToken() (gas: 303729)
TheSpaceTest:testCanTransferFromIfSettleTax() (gas: 357547)
TheSpaceTest:testCannotBidExceedAllowance() (gas: 60910)
TheSpaceTest:testCannotBidOutBoundTokens() (gas: 260482)
TheSpaceTest:testCannotBidPriceTooLow() (gas: 341674)
TheSpaceTest:testCannotGetTaxWithNonExistingToken() (gas: 16401)
TheSpaceTest:testCannotGetTokenURIInLogicContract() (gas: 298473)
TheSpaceTest:testCannotSetColorByAttacker() (gas: 302848)
TheSpaceTest:testCannotSetConfigByAttacker() (gas: 12053)
TheSpaceTest:testCannotSetPixel(uint256) (runs: 256, μ: 312357, ~: 312357)
TheSpaceTest:testCannotSetPriceByNonOwner() (gas: 302924)
TheSpaceTest:testCannotBidPriceTooLow() (gas: 344174)
TheSpaceTest:testCannotGetTaxWithNonExistingToken() (gas: 16379)
TheSpaceTest:testCannotGetTokenURIInLogicContract() (gas: 300973)
TheSpaceTest:testCannotSetColorByAttacker() (gas: 305326)
TheSpaceTest:testCannotSetConfigByAttacker() (gas: 12031)
TheSpaceTest:testCannotSetPixel(uint256) (runs: 256, μ: 314857, ~: 314857)
TheSpaceTest:testCannotSetPriceByNonOwner() (gas: 305424)
TheSpaceTest:testCannotSetTokenImageURIByNonACLManager() (gas: 11862)
TheSpaceTest:testCannotSetTotalSupplyByAttacker() (gas: 11858)
TheSpaceTest:testCannotTransferFromIfDefault() (gas: 394147)
TheSpaceTest:testCannotUpgradeByAttacker() (gas: 11539)
TheSpaceTest:testCollectableTax() (gas: 333364)
TheSpaceTest:testDefault() (gas: 390575)
TheSpaceTest:testCannotSetTotalSupplyByAttacker() (gas: 11836)
TheSpaceTest:testCannotTransferFromIfDefault() (gas: 398147)
TheSpaceTest:testCannotUpgradeByAttacker() (gas: 11517)
TheSpaceTest:testCollectableTax() (gas: 335864)
TheSpaceTest:testDefault() (gas: 394548)
TheSpaceTest:testGetConfig() (gas: 14302)
TheSpaceTest:testGetExistingPixel() (gas: 309428)
TheSpaceTest:testGetNonExistingPixel() (gas: 60258)
TheSpaceTest:testGetExistingPixel() (gas: 311906)
TheSpaceTest:testGetNonExistingPixel() (gas: 60303)
TheSpaceTest:testGetNonExistingPrice() (gas: 19529)
TheSpaceTest:testGetOwner() (gas: 346931)
TheSpaceTest:testGetOwner() (gas: 351931)
TheSpaceTest:testGetOwnerOfNonExistingToken() (gas: 13346)
TheSpaceTest:testGetPixelsByOwnerWithNoPixels() (gas: 24283)
TheSpaceTest:testGetPixelsByOwnerWithOnePixel() (gas: 319322)
TheSpaceTest:testGetPixelsPageByOwnerWithPixels() (gas: 585976)
TheSpaceTest:testGetPrice() (gas: 298001)
TheSpaceTest:testGetTax() (gas: 375416)
TheSpaceTest:testGetTokenImageURI() (gas: 14307)
TheSpaceTest:testGetTokenURI() (gas: 330962)
TheSpaceTest:testSetColor() (gas: 328848)
TheSpaceTest:testSetMintTax() (gas: 269237)
TheSpaceTest:testSetPixel(uint256) (runs: 256, μ: 398816, ~: 398816)
TheSpaceTest:testSetPrice(uint256) (runs: 256, μ: 302152, ~: 302152)
TheSpaceTest:testSetPriceByOperator(uint256) (runs: 256, μ: 352105, ~: 352105)
TheSpaceTest:testSetPriceTooHigh() (gas: 312004)
TheSpaceTest:testSetTaxRate() (gas: 345451)
TheSpaceTest:testSetTokenImageURI() (gas: 353313)
TheSpaceTest:testSetTotalSupply(uint256) (runs: 256, μ: 349701, ~: 349708)
TheSpaceTest:testSetTreasuryShare() (gas: 381788)
TheSpaceTest:testSettleTax() (gas: 336965)
TheSpaceTest:testTaxCalculation() (gas: 397405)
TheSpaceTest:testTokenShouldBeDefaulted() (gas: 323029)
TheSpaceTest:testGetPixelsByOwnerWithNoPixels() (gas: 24348)
TheSpaceTest:testGetPixelsByOwnerWithOnePixel() (gas: 321800)
TheSpaceTest:testGetPixelsPageByOwnerWithPixels() (gas: 588454)
TheSpaceTest:testGetPrice() (gas: 300501)
TheSpaceTest:testGetTax() (gas: 380480)
TheSpaceTest:testGetTokenImageURI() (gas: 14285)
TheSpaceTest:testGetTokenURI() (gas: 333462)
TheSpaceTest:testSetColor() (gas: 331348)
TheSpaceTest:testSetMintTax() (gas: 271715)
TheSpaceTest:testSetPixel(uint256) (runs: 256, μ: 403816, ~: 403816)
TheSpaceTest:testSetPrice(uint256) (runs: 256, μ: 304652, ~: 304652)
TheSpaceTest:testSetPriceByOperator(uint96) (runs: 256, μ: 354785, ~: 354785)
TheSpaceTest:testSetPriceTooHigh() (gas: 314504)
TheSpaceTest:testSetTaxRate() (gas: 347951)
TheSpaceTest:testSetTokenImageURI() (gas: 355813)
TheSpaceTest:testSetTotalSupply(uint256) (runs: 256, μ: 352202, ~: 352208)
TheSpaceTest:testSetTreasuryShare() (gas: 384288)
TheSpaceTest:testSettleTax() (gas: 339465)
TheSpaceTest:testTaxCalculation() (gas: 402405)
TheSpaceTest:testTokenShouldBeDefaulted() (gas: 325529)
TheSpaceTest:testTotalSupply() (gas: 7613)
TheSpaceTest:testUpgradeTo() (gas: 3215197)
TheSpaceTest:testWithdrawTreasury() (gas: 352672)
TheSpaceTest:testWithdrawUBI() (gas: 375819)
TheSpaceTest:testWithdrawTreasury() (gas: 355172)
TheSpaceTest:testWithdrawUBI() (gas: 378319)
4 changes: 2 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -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} 504 ${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_CURRENCY_TOKEN} ${BILLBOARD_REGISTRY_ADDRESS} ${BILLBOARD_ADMIN_ADDRESS} "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}
@forge create Distribution --rpc-url ${ETH_RPC_URL} --private-key ${DEPLOYER_PRIVATE_KEY} --constructor-args ${BILLBOARD_CURRENCY_TOKEN} ${BILLBOARD_ADMIN_ADDRESS} --legacy --verify --etherscan-api-key ${ETHERSCAN_API_KEY}
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
| Billboard (Operator) | OP Mainnet | [0x88ea16c2a69f50b9bc2e8f7684d425f33f29225f](https://optimistic.etherscan.io/address/0x88ea16c2a69f50b9bc2e8f7684d425f33f29225f) |
| Billboard (Registry) | OP Mainnet | [0x031Dc7C68D4A7057D28814dCc8c61e6f83c7DF25](https://optimistic.etherscan.io/address/0x031Dc7C68D4A7057D28814dCc8c61e6f83c7DF25) |
| Billboard (Distribution) | OP Mainnet | [0xad5caac6910f5a737ec53847000c13122b09eada](https://optimistic.etherscan.io/address/0xad5caac6910f5a737ec53847000c13122b09eada) |
| Billboard (Operator) | OP Sepolia | [0x6a72820E1CCCba1B1FE02E37881cEa3F9Aa6375C](https://sepolia-optimism.etherscan.io/address/0x6a72820E1CCCba1B1FE02E37881cEa3F9Aa6375C) |
| Billboard (Registry) | OP Sepolia | [0x29822FDFC36247A5C3b5E92a8E26991DC4D74a2a](https://sepolia-optimism.etherscan.io/address/0x29822FDFC36247A5C3b5E92a8E26991DC4D74a2a) |
| Billboard (Operator) | OP Sepolia | [0x2412316A9fA929CA5D476b9160Fd2688C76614Fe](https://sepolia-optimism.etherscan.io/address/0x2412316A9fA929CA5D476b9160Fd2688C76614Fe) |
| Billboard (Registry) | OP Sepolia | [0xF28e390E51ef279170E2Ccbd3Ffcd9c069A9332d](https://sepolia-optimism.etherscan.io/address/0xF28e390E51ef279170E2Ccbd3Ffcd9c069A9332d) |
| Billboard (Distribution) | OP Sepolia | [0x32C838d74f8b8f49a5B27c74E71797dEd3CCE8A3](https://sepolia-optimism.etherscan.io/address/0x32C838d74f8b8f49a5B27c74E71797dEd3CCE8A3) |

In the "Contract" tab of Polygonscan/Etherscan, you can see the contract code and ABI.
Expand Down
Loading
Loading