Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

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

Merged
merged 2 commits into from
Sep 6, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 0 additions & 28 deletions .github/workflows/ci-cypress.yml

This file was deleted.

66 changes: 0 additions & 66 deletions .github/workflows/ci.yml

This file was deleted.

28 changes: 0 additions & 28 deletions .github/workflows/main.yml

This file was deleted.

53 changes: 0 additions & 53 deletions .github/workflows/rc.yml

This file was deleted.

51 changes: 0 additions & 51 deletions .github/workflows/test.yml

This file was deleted.

115 changes: 59 additions & 56 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,30 +6,57 @@ on:
- develop

jobs:
CODE_STYLE:
name: CODE STYLE
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'

PHP_UNIT:
name: PHP UNIT
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: Checkout Code
- name: Baixando codigo
uses: actions/checkout@v4
with:
submodules: recursive

- name: Add default env values
# 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
cp .env.sample app

- uses: hoverkraft-tech/[email protected]
with:
Expand All @@ -40,36 +67,41 @@ jobs:
up-flags: "-d --wait"
down-flags: "-v"

- name: Run migrations
- name: Atualização da estrutura do banco de dados
run: |
docker compose exec web mkdir var/logs/
docker compose exec web mkdir var/private-files/
docker compose exec web chmod 777 var/logs/
docker compose exec web chmod 777 var/private-files/
docker compose exec web chmod 777 var/sessions/
docker compose exec web chmod 777 var/DoctrineProxies/
docker compose exec web php src/tools/apply-updates.php
docker compose exec web php app/bin/doctrine migrations:migrate --no-interaction --all-or-nothing
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: Run Phpunit tests
- name: Testes Unitários com PhpUnit
run: |
docker compose exec web ./vendor/bin/phpunit -c phpunit.xml
docker compose exec web ./vendor/bin/phpunit -c phpunit.xml --coverage-clover ./coverage.xml

- name: Cypress run
- 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}}'
# start: pnpm run cypress:run
config: '{"e2e":{"viewportWidth":375,"viewportHeight":667}}'
wait-on: "http://localhost:4242"
wait-on-timeout: 120
record: true
group: "UI - Chrome - Mobile"
working-directory: src
# config-file: src/cypress.config.js
# start: npm start
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 }}
Expand All @@ -83,27 +115,6 @@ jobs:
name: screenshots
if-no-files-found: error
path: src/cypress/screenshots

# - name: "UI Tests - Chrome - Mobile"
# uses: cypress-io/github-action@v6
# with:
# # config: '{"e2e":{"viewportWidth":375,"viewportHeight":667}}'
# # start: pnpm run cypress:run
# wait-on: "http://web"
# wait-on-timeout: 120
# browser: chrome
# record: true
# parallel: true
# group: "UI - Chrome - Mobile"
# spec: src/cypress/*
# config-file: src/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: Install composer and dependencies
# uses: php-actions/composer@v6
# with:
Expand All @@ -118,12 +129,4 @@ jobs:
# php_version: 8.2
# configuration: phpunit.xml
# php_extensions: pdo_pgsql zip intl gd mbstring curl xml
# args: tests --coverage-clover ./coverage.xml

# - name: Upload to Codecov
# uses: codecov/codecov-action@v2
# with:
# token: ${{ secrets.CODE_COV_TOKEN }}
# files: ./coverage.xml
# verbose: true

Loading
Loading