Skip to content

Instantly share code, notes, and snippets.

@fernandodebrando
Last active October 24, 2017 15:35
Show Gist options
  • Save fernandodebrando/d00158da0449284fec0d93a87d6ccedf to your computer and use it in GitHub Desktop.
Save fernandodebrando/d00158da0449284fec0d93a87d6ccedf to your computer and use it in GitHub Desktop.
Roteiro mão na massa PHP TestFest
https://github.com/herdphp/docker-phpqa/wiki
https://medium.com/trainingcenter/vamos-testar-o-php-c0b020608678
- Mão na massa - roteiro (usando docker-phpqa installer)
- Instale o Docker
https://www.docker.com/community-edition
- Instale o php-qa
curl -s https://raw.githubusercontent.com/herdphp/docker-phpqa/master/bin/installer.sh | bash
- Inicie o daemon do Docker
sudo systemctl start docker
- Gere um teste de… teste! =)
sudo phpqa generate -f ucfirst -b
Mão na massa - roteiro (usando clone repository)
- Instale o Docker
https://www.docker.com/community-edition
- Faça clone do repositório
git clone git@github.com:herdphp/docker-phpqa.git phpqa;
- Use o script bin/phpqa.sh ou crie um link simbólico para usá-lo globalmente:
Linux:
ln -s /CAMINHO/DO/PHPQA/bin/phpqa.sh /usr/local/bin/phpqa;
chmod +x /usr/local/bin/phpqa;
Windows:
alias phpqa="/CAMINHO/DO/PHPQA/bin/phpqa.sh"
- Teste um teste de… teste! =)
phpqa run phpt/examples/
Mão na massa - roteiro (configurando GitHub)
Primeiro, você precisa se inscrever no GitHub e configurar suas chaves SSH.
$ ssh -T git@github.com
Configure sua conta
$ git config --global user.name "Fernando Silva"
$ git config --global user.email "foo@example.com"
Mão na massa - roteiro (forking phptestfest-php-src)
Crie um forking do repo phptestfest-php-src na sua conta
https://github.com/phpcommunity/phptestfest-php-src
Configure os controles remotos
$ git remote -v
origin https://github.com/php/php-src.git (fetch)
origin https://github.com/php/php-src.git (push)
Mão na massa - roteiro (forking phptestfest-php-src)
Precisamos alterar o URL de origem para apontar para o nosso fork que acabamos de criar e, em seguida, adicionar um novo controle chamado upstream para o repositório do php.
$ git remote set-url origin git@github.com:{your-username}/phptestfest-php-src.git
$ git remote add upstream git@github.com:phpcommunity/phptestfest-php-src.git
Mão na massa - roteiro (pull request)
Criamos uma branch
$ git checkout master
$ git checkout -b teste-json-depth-error
Commit e push para o nosso fork
$ git add ext/json/tests/json_decode_error001.phpt
$ git commit -m "Add test for json_decode() depth error case"
$ git push origin test-json-depth-error
Solicita pull request via GitHub
Mão na massa - roteiro (após pull request)
Para manter nosso fork e cópia local do repo atualizado, utilizamos git fetch e git rebase.
$ git fetch upstream
$ git checkout master
$ git rebase upstream/master master
$ git push origin master
Referências:
https://www.sammyk.me/submitting-a-pull-request-to-php-src-writing-tests-for-php-source
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment