Skip to content

Ativa na pipeline de testes verificação com psalm e cypress #69

Ativa na pipeline de testes verificação com psalm e cypress

Ativa na pipeline de testes verificação com psalm e cypress #69

Workflow file for this run

name: Testing
on:
pull_request:
branches:
- develop
jobs:
CODE_STYLE_FIXER:
name: CODE STYLE CS FIXER
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Run PHP-CS-Fixer
uses: erkenes/php-cs-fixer-action@main
with:
args: '--dry-run --diff -vvv'
CODE_STYLE_PSALM:
name: CODE STYLE PSALM
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive
- name: Run Psalm
uses: docker://ghcr.io/psalm/psalm-github-actions
with:
composer_require_dev: true
composer_ignore_platform_reqs: true
security_analysis: true
CODE_TESTS:
name: CODE TESTS
timeout-minutes: 15
runs-on: ubuntu-latest
steps:
- name: Baixando codigo
uses: actions/checkout@v4
with:
submodules: recursive
# See https://github.com/pnpm/action-setup
- name: Install pnpm
uses: pnpm/action-setup@v4
with:
version: 9
# See https://github.com/actions/setup-node
- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20
cache: 'pnpm'
# cache-dependency-path: ./pnpm-lock.yaml
- run: pnpm i
- run: pnpm run build
- name: Configuração de valores padrões
run: |
cp .env.sample .env
- uses: hoverkraft-tech/[email protected]
with:
compose-file: |
docker-compose.yaml
docker-compose.dev.yaml
services: "web"
up-flags: "-d --wait"
down-flags: "-v"
- name: Atualização da estrutura do banco de dados
run: |
docker compose -f docker-compose.yaml -f docker-compose.dev.yaml exec web composer install
docker compose -f docker-compose.yaml -f docker-compose.dev.yaml exec web mkdir var/logs/
docker compose -f docker-compose.yaml -f docker-compose.dev.yaml exec web mkdir var/private-files/
docker compose -f docker-compose.yaml -f docker-compose.dev.yaml exec web chmod 777 var/logs/
docker compose -f docker-compose.yaml -f docker-compose.dev.yaml exec web chmod 777 var/private-files/
docker compose -f docker-compose.yaml -f docker-compose.dev.yaml exec web chmod 777 var/sessions/
docker compose -f docker-compose.yaml -f docker-compose.dev.yaml exec web chmod 777 var/DoctrineProxies/
docker compose -f docker-compose.yaml -f docker-compose.dev.yaml exec web ./scripts/db-update.sh
env:
APP_MODE: development
- name: Testes Unitários com PhpUnit
run: |
docker compose exec web ./vendor/bin/phpunit -c phpunit.xml --coverage-clover ./coverage.xml
- name: Upload to Codecov
uses: codecov/codecov-action@v2
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage.xml
verbose: true
- name: Testes de integração com Cypress
uses: cypress-io/github-action@v6
with:
config: '{"e2e":{"viewportWidth":375,"viewportHeight":667}}'
wait-on: "http://localhost:4242"
wait-on-timeout: 120
browser: chrome
# record: false
# parallel: true
# group: "UI - Chrome - Mobile"
config-file: cypress/cypress.config.js
env:
# CYPRESS_PROJECT_ID: ${{ secrets.CYPRESS_PROJECT_ID }}
# CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
# Recommended: pass the GitHub token lets this action correctly
# determine the unique run id necessary to re-run the checks
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Save build folder
uses: actions/upload-artifact@v4
with:
name: screenshots
if-no-files-found: error
path: src/cypress/screenshots
# - name: Install composer and dependencies
# uses: php-actions/composer@v6
# with:
# php_extensions: pdo_pgsql zip intl gd mbstring curl xml
# - name: PHPUnit Tests Mapas
# uses: php-actions/phpunit@v3
# env:
# XDEBUG_MODE: coverage
# with:
# version: 10.5
# php_version: 8.2
# configuration: phpunit.xml
# php_extensions: pdo_pgsql zip intl gd mbstring curl xml