Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
manthis authored Dec 31, 2023
1 parent e003e31 commit e617abc
Showing 1 changed file with 5 additions and 5 deletions.
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,15 +18,15 @@ Vous devez alors fournir les tests unitaires de votre smart contract Nous n’at

Le plan de test est simple: passer en revue l'ensemble des méthodes du contract _Voting.sol_. Pour cela j'ai effectué les tâches suivantes avec pour objectif d'atteindre 100% de coverage:

- Définit un objet _WorkflowStatus_ pour répliquer l'enum des différents états du workflow qui se trouve dans le contrat _Voting.sol_.
- Définit mes fixtures pour préparer notre environnement pour nos tests. J'ai pris l'initiative de n'utiliser que des fixtures et aucun appel aux fonctions natives de mocha: _before_ et _beforeEach_.
- Définit mes tests unitaires en passant sur chaque méthode. Chaque méthode correspond à un _describe_ qui contient plusieurs tests propre à cette dernière. Chaque groupe de méthodes est lui-même placé dans un describe de contexte. Pour chaque méthode et afin de déterminer les tests à réaliser nous avons suivi les étapes suivantes:
- Défini un objet _WorkflowStatus_ pour répliquer l'enum des différents états du workflow qui se trouve dans le contrat _Voting.sol_.
- Défini mes fixtures pour préparer notre environnement pour nos tests. J'ai pris l'initiative de n'utiliser que des fixtures et aucun appel aux fonctions natives de mocha: _before_ et _beforeEach_.
- Défini mes tests unitaires en passant sur chaque méthode. Chaque méthode correspond à un _describe_ qui contient plusieurs tests propre à cette dernière. Chaque groupe de méthodes est lui-même placé dans un describe de contexte. Pour chaque méthode et afin de déterminer les tests à réaliser nous avons suivi les étapes suivantes:
- Tester le/les modifiers
- Tester les différents require
- Tester les événements émis
- Tester un cas de succès
- Eventuels autres tests
- Définit mes tests End to End qui couvrent des aspects fonctionnels non abordés dans les autres tests.
- Défini mes tests End to End qui couvrent des aspects fonctionnels non abordés dans les autres tests.

J'ai implémenté **50 tests unitaires et e2e qui couvrent 100% du code de notre contrat Solidity** comme nous allons le voir dans les prochaines sections.

Expand All @@ -44,7 +44,7 @@ J'ai implémenté **50 tests unitaires et e2e qui couvrent 100% du code de notre

### Codecov Badge and heating maps

J'ai développé une action Github pour uploader tous les fichiers de coverage resultant des tests hardhats sur Codecov afin de tracker la progression du coverage: [codecov.yml](./.github/workflows/codecov.yml). Cette action m'a également permis d'ajouter des informsions de coverage sur ce README.
J'ai développé une action Github pour uploader tous les fichiers de coverage resultant des tests hardhats sur Codecov afin de tracker la progression du coverage: [codecov.yml](./.github/workflows/codecov.yml). Cette action m'a également permis d'ajouter des informations de coverage sur ce README.

Voici le badge Codecov qui indique le pourcentage de coverage du projet:

Expand Down

0 comments on commit e617abc

Please sign in to comment.