Skip to content

Commit

Permalink
Add Cypress test (#1158)
Browse files Browse the repository at this point in the history
* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* wip

* pipeline

* pipeline

* pipeline

* wip

* wip

* add cypress tests to radio rules

* add cypress tests to checkbox, radio, rows

* fix loop

* fix checkbox

* fix phpstan

* fix tests
  • Loading branch information
luanfreitasdev authored Sep 20, 2023
1 parent e2199cb commit bf734a9
Show file tree
Hide file tree
Showing 34 changed files with 3,296 additions and 326 deletions.
Binary file added .DS_Store
Binary file not shown.
58 changes: 58 additions & 0 deletions .github/workflows/code-style.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: Code style

on:
push:
branches:
- "**"
paths-ignore:
- "art/**"
- "README.md"
pull_request:
types: [ready_for_review, synchronize, opened]
paths-ignore:
- "art/**"
- "README.md"

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
php: [ 8.2 ]
laravel: [ 10.* ]
dependency-version: [ prefer-stable ]

name: PHP:${{ matrix.php }} / L:${{ matrix.laravel }}

if: github.ref != 'refs/heads/todo-tests'

steps:
- name: Checkout
uses: actions/[email protected]

- name: Setup PHP, with composer and extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv
tools: composer:v2
coverage: none

- name: Get composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-files-dir)"

- name: Cache composer dependencies
uses: actions/cache@v3
with:
path: $(composer config cache-files-dir)
key: dependencies-laravel-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}

- name: Install Composer dependencies
run: |
composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update
rm composer.lock
composer install
- name: Pint
run: composer test:pint
84 changes: 84 additions & 0 deletions .github/workflows/cypress.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
name: Cypress

on:
push:
branches:
- "**"
paths-ignore:
- "art/**"
- "README.md"
pull_request:
types: [ready_for_review, synchronize, opened]
paths-ignore:
- "art/**"
- "README.md"

jobs:
build:
runs-on: ubuntu-latest

services:
mysql:
image: mysql:5.7
env:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: powergridtest
ports:
- 3307:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3

strategy:
matrix:
php: [ 8.2 ]
laravel: [ 10.* ]
dependency-version: [ prefer-stable ]

name: PHP:${{ matrix.php }} / L:${{ matrix.laravel }}

if: github.ref != 'refs/heads/todo-tests'

steps:
- name: Checkout
uses: actions/[email protected]

- name: Setup PHP, with composer and extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv
tools: composer:v2
coverage: none

- name: Get composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-files-dir)"

- name: Cache composer dependencies
uses: actions/cache@v3
with:
path: $(composer config cache-files-dir)
key: dependencies-laravel-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}

- name: Install Composer dependencies
run: |
composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update
rm composer.lock
composer install
- name: Install openspout/openspout
if: matrix.php == '8.2'
run: composer require openspout/openspout

- name: Cypress
run: |
npm install
git clone https://github.com/Power-Components/powergrid-demo-misc.git tests/cypress/app
cd tests/cypress &&
cp stubs/CypressTable.php app/app/Livewire/CypressTable.php &&
cp stubs/rules-controllers.blade.php app/resources/views/components/header/rules-controllers.blade.php
cd ./../../
chmod +x ./tests/cypress/run.sh
./tests/cypress/run.sh
cd ./tests/cypress/app && php artisan serve & sleep 5 &
cd ./tests/cypress && npx cypress run
shell: bash
73 changes: 73 additions & 0 deletions .github/workflows/mysql.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
name: MySQL

on:
push:
branches:
- "**"
paths-ignore:
- "art/**"
- "README.md"
pull_request:
types: [ready_for_review, synchronize, opened]
paths-ignore:
- "art/**"
- "README.md"

jobs:
build:
runs-on: ubuntu-latest

services:
mysql:
image: mysql:5.7
env:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: powergridtest
ports:
- 3307:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3

strategy:
matrix:
php: [ 8.2, 8.1 ]
laravel: [ 10.* ]
dependency-version: [ prefer-stable ]

name: PHP:${{ matrix.php }} / L:${{ matrix.laravel }}

if: github.ref != 'refs/heads/todo-tests'

steps:
- name: Checkout
uses: actions/[email protected]

- name: Setup PHP, with composer and extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv
tools: composer:v2
coverage: none

- name: Get composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-files-dir)"

- name: Cache composer dependencies
uses: actions/cache@v3
with:
path: $(composer config cache-files-dir)
key: dependencies-laravel-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}

- name: Install Composer dependencies
run: |
composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update
rm composer.lock
composer install
- name: Install openspout/openspout
if: matrix.php == '8.2'
run: composer require openspout/openspout

- name: MySQL
run: composer test:mysql
24 changes: 1 addition & 23 deletions .github/workflows/php.yml → .github/workflows/pgsql.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Powergrid Tests
name: PostGreSQL

on:
push:
Expand All @@ -18,15 +18,6 @@ jobs:
runs-on: ubuntu-latest

services:
mysql:
image: mysql:5.7
env:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: powergridtest
ports:
- 3307:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3

postgres:
image: postgres:9.6
env:
Expand Down Expand Up @@ -79,18 +70,5 @@ jobs:
if: matrix.php == '8.2'
run: composer require openspout/openspout

- name: Pint
if: matrix.php == '8.1'
run: composer test:pint

- name: Larastan
run: composer test:types

- name: SQLite
run: composer test:sqlite

- name: MySQL
run: composer test:mysql

- name: PostGreSQL
run: composer test:pgsql
58 changes: 58 additions & 0 deletions .github/workflows/phpstan.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: PHPStan

on:
push:
branches:
- "**"
paths-ignore:
- "art/**"
- "README.md"
pull_request:
types: [ready_for_review, synchronize, opened]
paths-ignore:
- "art/**"
- "README.md"

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
php: [ 8.2 ]
laravel: [ 10.* ]
dependency-version: [ prefer-stable ]

name: PHP:${{ matrix.php }} / L:${{ matrix.laravel }}

if: github.ref != 'refs/heads/todo-tests'

steps:
- name: Checkout
uses: actions/[email protected]

- name: Setup PHP, with composer and extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv
tools: composer:v2
coverage: none

- name: Get composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-files-dir)"

- name: Cache composer dependencies
uses: actions/cache@v3
with:
path: $(composer config cache-files-dir)
key: dependencies-laravel-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}

- name: Install Composer dependencies
run: |
composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update
rm composer.lock
composer install
- name: Larastan
run: composer test:types
62 changes: 62 additions & 0 deletions .github/workflows/sqlite.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: SQLite

on:
push:
branches:
- "**"
paths-ignore:
- "art/**"
- "README.md"
pull_request:
types: [ready_for_review, synchronize, opened]
paths-ignore:
- "art/**"
- "README.md"

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
php: [ 8.2, 8.1 ]
laravel: [ 10.* ]
dependency-version: [ prefer-stable ]

name: PHP:${{ matrix.php }} / L:${{ matrix.laravel }}

if: github.ref != 'refs/heads/todo-tests'

steps:
- name: Checkout
uses: actions/[email protected]

- name: Setup PHP, with composer and extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, bcmath, soap, intl, gd, exif, iconv
tools: composer:v2
coverage: none

- name: Get composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-files-dir)"

- name: Cache composer dependencies
uses: actions/cache@v3
with:
path: $(composer config cache-files-dir)
key: dependencies-laravel-${{ matrix.laravel }}-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}

- name: Install Composer dependencies
run: |
composer require "laravel/framework:${{ matrix.laravel }}" --no-interaction --no-update
rm composer.lock
composer install
- name: Install openspout/openspout
if: matrix.php == '8.2'
run: composer require openspout/openspout

- name: SQLite
run: composer test:sqlite
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,5 @@ pnpm-lock.yaml
tmp/
dist/powergrid.js.LICENSE.txt
.env
tests/cypress/app/
.DS_Store
Loading

0 comments on commit bf734a9

Please sign in to comment.