Voir DEBUG & AUTOMATISER LES TEST
On va aller dans le fichier hardhat.config.js
require("@nomiclabs/hardhat-waffle");
// This is a sample Hardhat task. To learn how to create your own go to
// <https://hardhat.org/guides/create-task.html>
task("accounts", "Prints the list of accounts", async (taskArgs, hre) => {
const accounts = await hre.ethers.getSigners();
for (const account of accounts) {
console.log(account.address);
}
});
// You need to export an object to set up your config
// Go to <https://hardhat.org/config/> to learn more
/**
* @type import('hardhat/config').HardhatUserConfig
*/
module.exports = {
solidity: "0.8.4",
};
On va modifier l’export au niveau de la derniere ligne
/**
* @type import('hardhat/config').HardhatUserConfig
*/
module.exports = {
solidity: {
version: "0.8.4",
settings: {
optimizer: {
enabled: true,
runs: 200
}
}
},
paths: {
artifacts: "./artifacts"
},
networks: {
rinkeby: {
// infura url
url: "XXXXXX",
// private key from metamask
accounts: ["XXXXX"]
}
},
etherscan: {
apiKey: "XXXXXXXX"
}
};
Le parametre run est a configurer selon si notre contract va être beaucoup utilisé ou beaucoup déployé, plus le nombre est bas plus le cout de deploiement sera faible, mais le cout des fonctions va être plus élevé , et inversement.
Valeur par defaut = 200
Le path pour modifier la valeur par defaut de différents fichiers
On va entrer dans le terminal et saisir
npx hardhat run ./scripts/sample-script.js --network-rinkeby
Ensuite rdv sur https://rinkeby.etherscan.io/ pour observer notre contract
On peux se rendre compte que dans l’onglet “contract” dans le detail de notre contract , on ne peux pas voir le code ni l’onglet “read functions” ni “write functions”
Pour cela il faut valider notre compte donc rdv sur etherscan.io, on creer un compte et dans les parametres on va creer une apiKey
Puis la renseigner dans notre fichier de config hardhat