Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/paulohrpinheiro/test-driven-learning
Learn programming by passing code tests
https://github.com/paulohrpinheiro/test-driven-learning
c javascript perl python ruby rust tdd
Last synced: about 1 month ago
JSON representation
Learn programming by passing code tests
- Host: GitHub
- URL: https://github.com/paulohrpinheiro/test-driven-learning
- Owner: paulohrpinheiro
- License: mit
- Created: 2016-02-14T01:21:21.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2018-09-16T13:58:04.000Z (over 6 years ago)
- Last Synced: 2023-02-26T08:16:48.925Z (almost 2 years ago)
- Topics: c, javascript, perl, python, ruby, rust, tdd
- Language: C
- Homepage:
- Size: 84 KB
- Stars: 11
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.mkd
- License: LICENSE
Awesome Lists containing this project
README
# Test Driven Learning
Melhore sua capacidade de programação, trabalhando com código e especificações
de terceiros, e, especialmente, satisfazendo a testes unitários.# Público alvo
Todo aquele que está começando em uma linguagem e quer resolver alguns
exercícios, mas fazendo testes de unidade. Com uma diferença: os testes já
estão feitos. Leia os requisitos, implemente e verifique.## Instalação
Clone este repositório em sua máquina:
git clone https://github.com/paulohrpinheiro/test-driven-learning
Melhor ainda de você der um *fork* desse projeto, se tiver uma conta
no *GitHub*. Aqui tem-se as instruções:https://help.github.com/articles/fork-a-repo/
## Uso
Primeiro, escolha um dos níveis (atualmente só o
diretório [*000_novice*](000_novice)). Então crie uma *branch* para você. Isso
faz parte do exercício:git checkout -b minhasolucao # *minhasolucao* é uma sugestão de nome
Trabalhe nos arquivos `problems.*`, execute os testes conforme explicado logo
mais abaixo.Existe uma *branch* com sugestão de soluções: é a [branch solved](). Para
passar a essa *branch*, execute o comando:git checkout solved
Para voltar à *branch minhasolucao*, onde devem estar seus códigos, digite o
comando:git checkout minhasolucao
Em *solved* está a minha solução para os problemas, que serve como meus testes
para testar os testes. Pode servir de referência, se quiser comparar seu
código ou não ter entendido alguma coisa.Agora você pode começar a trabalhar no diretório da linguagem que você prefere:
1. [Python](000_novice/python)
1. [Perl](000_novice/perl)
1. [C](000_novice/c)
1. [Rust](000_novice/rust)
1. [Ruby](000_novice/ruby)
1. [JavaScript](000_novice/javascript)
1. [GO](000_novice/go)Para testar, cada linguagem tem seu comando. Dentro da pasta e *branch* que
você trabalhou, execute o comando específico:Linguagem | comando
-------------|--------
*Python*\* | `python problems.py`
*Perl* | `perl tests.t`
*C* | `make test`
*Rust* | `cargo test`
*Ruby* | `ruby tests.rb -v`
*JavaScript* | `d8 problems.js`
GO | `go test -v`\* Funciona tanto no *Python2* como *Python3*
Se algum teste falhar, continue trabalhando e testando.
# Quer ajudar no projeto?
1. Clone ele!
1. Crie uma *branch* para sua contribuição: `git checkout -b minha-contribuissaum`
1. "Comite" suas alterações: `git commit -am 'Add some feature'`
1. Faça o *pull request* :stuck_out_tongue:## Licença
Licenciado sob a *MIT License*, veja o arquivo [LICENSE](LICENSE).