From 629c1ced6a6fa96bea5c44824801e1e2f1daf7b2 Mon Sep 17 00:00:00 2001 From: ysaito <60546319+yk-saito@users.noreply.github.com> Date: Tue, 28 Nov 2023 13:32:24 +0900 Subject: [PATCH 1/3] refactor: add error message to onlyOwner revert --- ...\256\237\350\243\205\343\201\227\343\202\210\343\201\206.md" | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git "a/docs/Polygon-ENS-Domain/ja/section-3/lesson-1_\350\263\207\351\207\221\343\201\256\345\274\225\343\201\215\345\207\272\343\201\227\343\202\222\345\256\237\350\243\205\343\201\227\343\202\210\343\201\206.md" "b/docs/Polygon-ENS-Domain/ja/section-3/lesson-1_\350\263\207\351\207\221\343\201\256\345\274\225\343\201\215\345\207\272\343\201\227\343\202\222\345\256\237\350\243\205\343\201\227\343\202\210\343\201\206.md" index 133e7fe3e..2f2c7c79d 100644 --- "a/docs/Polygon-ENS-Domain/ja/section-3/lesson-1_\350\263\207\351\207\221\343\201\256\345\274\225\343\201\215\345\207\272\343\201\227\343\202\222\345\256\237\350\243\205\343\201\227\343\202\210\343\201\206.md" +++ "b/docs/Polygon-ENS-Domain/ja/section-3/lesson-1_\350\263\207\351\207\221\343\201\256\345\274\225\343\201\215\345\207\272\343\201\227\343\202\222\345\256\237\350\243\205\343\201\227\343\202\210\343\201\206.md" @@ -18,7 +18,7 @@ ```solidity modifier onlyOwner() { - require(isOwner()); + require(isOwner(), "You aren't the owner"); _; } From cea85dd1735698a599bcf511ca7473e471d71903 Mon Sep 17 00:00:00 2001 From: ysaito <60546319+yk-saito@users.noreply.github.com> Date: Tue, 28 Nov 2023 15:25:27 +0900 Subject: [PATCH 2/3] refactor: remove console.log in Domains contract --- ...61\343\202\201\343\202\210\343\201\206.md" | 51 ++++++++++++++++--- 1 file changed, 43 insertions(+), 8 deletions(-) diff --git "a/docs/Polygon-ENS-Domain/ja/section-3/lesson-2_\347\220\206\350\247\243\343\202\222\346\267\261\343\202\201\343\202\210\343\201\206.md" "b/docs/Polygon-ENS-Domain/ja/section-3/lesson-2_\347\220\206\350\247\243\343\202\222\346\267\261\343\202\201\343\202\210\343\201\206.md" index 976511114..70a4144b5 100644 --- "a/docs/Polygon-ENS-Domain/ja/section-3/lesson-2_\347\220\206\350\247\243\343\202\222\346\267\261\343\202\201\343\202\210\343\201\206.md" +++ "b/docs/Polygon-ENS-Domain/ja/section-3/lesson-2_\347\220\206\350\247\243\343\202\222\346\267\261\343\202\201\343\202\210\343\201\206.md" @@ -14,11 +14,9 @@ mapping(uint => string) public names; // コントラクトのどこかに付け加えてください。 function getAllNames() public view returns (string[] memory) { - console.log("Getting all names from contract"); string[] memory allNames = new string[](_tokenIds.current()); for (uint i = 0; i < _tokenIds.current(); i++) { allNames[i] = names[i]; - console.log("Name for token %d is %s", i, allNames[i]); } return allNames; @@ -225,6 +223,41 @@ describe('ENS-Domain', () => { ``` +次に、`Domains`コントラクト内で定義していた`console.log`を削除しましょう。 + +import文を削除します。 + +```solidity +// === 下記を削除 === +import "hardhat/console.sol"; +``` + +constructor関数内の`console.log`を削除します。 + +```solidity + // === 下記を削除 === + console.log('%s name service deployed', _tld); +``` + +`register`関数内の`console.log`を削除します。 + +```solidity + // === 下記を削除 === + console.log( + 'Registering %s.%s on the contract with tokenID %d', + name, + tld, + newRecordId + ); +``` + +```solidity + // === 下記を削除 === + console.log('\n--------------------------------------------------------'); + console.log('Final tokenURI', finalTokenUri); + console.log('--------------------------------------------------------\n'); +``` + では下のコマンドを実行することでコントラクトのテストをしていきましょう! ``` @@ -234,16 +267,18 @@ yarn test 最後に下のような結果がでいれば成功です! ``` - ✔ Token amount contract has is correct! (4986ms) -robber could not withdraw token - ✔ someone not owenr cannot withdraw token (68ms) +Compiled 1 Solidity file successfully + + + ENS-Domain + ✔ Token amount contract has is correct! (1417ms) + ✔ someone not owenr cannot withdraw token ✔ contract owner can withdrawl token from conteract! - ✔ Domain value is depend on how long it is (38ms) + ✔ Domain value is depend on how long it is - 4 passing (5s) + 4 passing (1s) -✨ Done in 8.83s. ``` ### 🙋‍♂️ 質問する From a3b786c2f8d6bf476b04540aab902a9f5396ef45 Mon Sep 17 00:00:00 2001 From: ysaito <60546319+yk-saito@users.noreply.github.com> Date: Tue, 28 Nov 2023 19:09:53 +0900 Subject: [PATCH 3/3] feat: add revert test --- ...\267\261\343\202\201\343\202\210\343\201\206.md" | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) diff --git "a/docs/Polygon-ENS-Domain/ja/section-3/lesson-2_\347\220\206\350\247\243\343\202\222\346\267\261\343\202\201\343\202\210\343\201\206.md" "b/docs/Polygon-ENS-Domain/ja/section-3/lesson-2_\347\220\206\350\247\243\343\202\222\346\267\261\343\202\201\343\202\210\343\201\206.md" index 70a4144b5..43cc00a51 100644 --- "a/docs/Polygon-ENS-Domain/ja/section-3/lesson-2_\347\220\206\350\247\243\343\202\222\346\267\261\343\202\201\343\202\210\343\201\206.md" +++ "b/docs/Polygon-ENS-Domain/ja/section-3/lesson-2_\347\220\206\350\247\243\343\202\222\346\267\261\343\202\201\343\202\210\343\201\206.md" @@ -167,18 +167,13 @@ describe('ENS-Domain', () => { deployTextFixture, ); - let txn; - const ownerBeforeBalance = await hre.ethers.provider.getBalance( owner.address, ); - // スーパーコーダーとしてコントラクトから資金を奪おうとします。 - try { - txn = await domainContract.connect(superCoder).withdraw(); - await txn.wait(); - } catch (error) { - console.log('robber could not withdraw token'); - } + + await expect( + domainContract.connect(superCoder).withdraw(), + ).to.be.revertedWith("You aren't the owner"); const ownerAfterBalance = await hre.ethers.provider.getBalance( owner.address,