REPOSITÓRIO FOI MOVIDO PARA https://github.com/db1group/MestreDosCodigosPhpChecker
Esse repositório contém todos os testes automatizados para validação automatizada dos exercícios de PHP do Mestre dos códigos.
Cada exercício possui um identificador (EXERCISE_ID) ao início de seu enunciado, que será utilizado ao nomear as tags das imagens de teste.
Isso ocorre porque cada imagem criada tem objetivo de testar apenas um exercício.
Mais detalhes você pode conferir na Estrutura do projeto.
O Docker Hub contém todas as tags disponíveis.
Acesse a pasta do projeto que possui o arquivo index.php e execute:
docker run --rm -it -v $(pwd):/opt/project/public byivo/mdc-php-checker:EXERCISE_ID
Onde:
docker runcria e executa um container a partir de uma imagem.--rmexcluir esse container assim que ele é parado.-itexecute em modo de terminal interativo.-v $(pwd):/opt/project/publicmonte um volume chamado /opt/project/public dentro do container, contendo os arquivos do diretório que estou rodando o comando $(pwd)byivo/mdc-php-checkerimagem utilizada na criação do containerEXERCISE_IDtag da imagem, que deve ser substituída pelo ID do exercício a ser testado.
Para criar a imagem, execute na raiz do projeto:
./build-non-versioned-image-for-exercise.sh EXERCISE_IDOnde:
./build-non-versioned-image-for-exercise.shé o caminho do scriptEXERCISE_IDdeve ser substituído pelo identificador do exercício. (É a palavra entre parênteses ao início do enunciado e.g. ddos-tracker; calculator)
O projeto é separado em duas partes:
A pasta docker-build possui os arquivos de configuração do docker e de execução dos testes.
Aqui ficam os arquivos que são comuns de todas as imagens.
A pasta test contém diversos diretórios, onde cada um possui os testes associados com a resolução de um problema.
A tag de cada imagem será o mesmo nome do diretório de testes usado para criar a imagem.
Cada uma dessas pastas será copiada em sua própria imagem, dividindo espaço com os Arquivos de configuração do projeto PHP.