Índice:
Este é um projeto de demonstração para fornecer um exemplo de minhas habilidades em programação orientada a objetos usando PHP, escrevendo testes unitários PHPUnit e aproveitando ferramentas como Composer (um gerenciador de dependências para PHP), Git (um sistema de controle de versão distribuído) e, o Concha Unix. Também reflete meu conhecimento de plataformas de desenvolvimento modernas como GitHub (um hub de repositórios de código-fonte online), Codecov (para insights de cobertura de código) e CircleCI (integração contínua e entrega contínua).
Este projeto não foi escrito em nenhum caso pensando em ser utilizado em produção, mas pode ser utilizado como você quiser sob sua total responsabilidade. Você também pode bifurcá-lo e usá-lo como base para seu próprio projeto, se achar útil.
OoWordpressNonces é um pacote Composer para WordPress para lidar com WordPress Nonces usando uma abordagem de Programação Orientada a Objetos .
Ele não substitui o sistema WordPress Nonces original, este pacote é apenas um wrapper, usando uma abordagem OOP , para as funções originais do WordPress Nonces .
O código é simples, autoexplicativo e totalmente documentado. No código-fonte, cada método de classe possui um link para a função original do WordPress que ele agrupa. Para mais detalhes você pode ver a documentação oficial do WordPress para Nonces
Você pode instalar o OoWordpressNonces adicionando esta especificação de repositório de pacotes ao arquivo composer.json
do seu projeto:
{
"repositories": [
{
"type": "vcs",
"url": "https://github.com/josepcrespo/oo-wordpress-nonces"
}
],
"require": {
"josepcrespo/oo-wordpress-nonces": "master"
}
}
e então execute php composer.phar update
.
Nesta seção, você pode obter instruções para configurar este projeto em sua máquina local para fins de desenvolvimento e teste.
Clone o projeto usando Git:
git clone https://github.com/josepcrespo/oo-wordpress-nonces.git
ou baixe um arquivo ZIP com todos os arquivos do projeto: https://github.com/josepcrespo/oo-wordpress-nonces/archive/master.zip
Antes de começar a instalar o Composer:
- PHP instalado em seu sistema é um requisito obrigatório. Se o seu ambiente de desenvolvimento roda em macOS, recomendo instalá-lo usando Homebrew
- Antes de começar a usar o Homebrew é altamente recomendável ter o Xcode instalado e atualizado. Você pode instalar/atualizar o Xcode usando a macOS App Store.
- Se estiver usando o macOS , você também precisará instalar as ferramentas de linha de comando do Xcode. Para instalar/atualizar as ferramentas de linha de comando do Xcode , escreva este comando usando o Terminal.app (depois de instalar ou atualizar o Xcode ):
xcode-select --install
Para instalar rapidamente o Composer no diretório atual, consulte a página oficial de download do Composer para obter instruções atualizadas.
Para instalar as dependências definidas para o seu projeto, basta executar o comando de instalação do Composer no diretório raiz do projeto usando Terminal.app (se você estiver usando macOS ) ou com seu Shell preferido:
php composer.phar install
Você pode consultar as diretrizes oficiais do Composer para instalação de dependências para obter mais detalhes.
Se você usou a opção --filename
na instalação do Composer
- Talvez você tenha instalado seu Composer usando a opção de instalação
--filename
, por exemplo desta forma:php composer-setup.php --filename=composer
Nesse caso, você deve executarcomposer install
para instalar as dependências.
Os Testes Unitários deste pacote foram feitos utilizando PHPUnit.
cp phpunit.xml.dist phpunit.xml
vendor/bin/phpunit
Depois de executar os testes, você pode visualizar os resultados da cobertura dos testes abrindo o arquivo index.html
criado na pasta tests/code-coverage-reports/html-format/
.
Se o PHPUnit lançar uma mensagem de erro dizendo que não consegue encontrar alguma Classe utilizada nos testes.
- Use o seguinte comando do Composer e execute novamente os testes.
php composer.phar dump-autoload
Você precisa da extensão Xdebug PHP habilitada.
- A funcionalidade de cobertura de código do PHPUnit é configurada por padrão para este projeto. Ele utiliza o componente PHP_CodeCoverage , que por sua vez aproveita a funcionalidade de cobertura de código fornecida pela extensão Xdebug para PHP.
- Se você não quiser ver a cobertura do código ou não conseguir ativar corretamente a extensão Xdebug, poderá remover a entrada
<logging>
completa presente no arquivo de configuração phpunit.xml.