Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/robsoncastilho/portaeletronica
Exemplo de uso de um stub para eliminar a dependência de DateTime e possibilitar que a classe que precisa de data/hora seja testável.
https://github.com/robsoncastilho/portaeletronica
csharp manual-stub stub unit-testing
Last synced: 13 days ago
JSON representation
Exemplo de uso de um stub para eliminar a dependência de DateTime e possibilitar que a classe que precisa de data/hora seja testável.
- Host: GitHub
- URL: https://github.com/robsoncastilho/portaeletronica
- Owner: robsoncastilho
- Created: 2015-03-17T18:51:37.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2015-03-17T19:30:33.000Z (almost 10 years ago)
- Last Synced: 2024-12-07T04:40:50.027Z (2 months ago)
- Topics: csharp, manual-stub, stub, unit-testing
- Language: C#
- Size: 328 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PortaEletronica
O objetivo do exemplo é mostrar como tornar testável uma classe que faça uso da data/hora corrente.Algumas considerações sobre o exemplo:
- Mostra como implementar um stub "do zero" ao invés de fazer uso de algum framework de mock.
- A dependencia (IProvedorDeHorario) é injetada via construtor. Em um projeto real, como muitos usos dessa dependencia pode ser interessante considerar a implementação do padrão Ambient Context (exemplo dessa estratégia no repositório "TimeProvider" - https://github.com/robsoncastilho/TimeProvider - recomendo a leitura do artigo citado no repositorio).
(Outras observações no próprio código.)