Always get a fresh AppInstance instance when testing topic subscriptions #498
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Emulator Tests | |
on: | |
pull_request: | |
paths: | |
- 'src/**' | |
- 'tests/**' | |
- '.github/workflows/emulator-tests.yml' | |
- 'composer.json' | |
push: | |
branches: ['7.x'] | |
paths: | |
- 'src/**' | |
- 'tests/**' | |
- '.github/workflows/emulator-tests.yml' | |
- 'composer.json' | |
workflow_dispatch: | |
jobs: | |
emulator-tests: | |
name: Emulator Tests | |
runs-on: ubuntu-latest | |
env: | |
php-version: '8.3' | |
extensions: ctype, dom, grpc, json, mbstring, openssl, xml, zip, zlib | |
key: cache-emulators-7x-${{ matrix.php }}-v1 | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
- name: Setup cache environment | |
id: extcache | |
uses: shivammathur/cache-extensions@v1 | |
with: | |
php-version: ${{ env.php-version }} | |
extensions: ${{ env.extensions }} | |
key: ${{ env.key }} | |
- name: Cache extensions | |
uses: actions/[email protected] | |
with: | |
path: ${{ steps.extcache.outputs.dir }} | |
key: ${{ steps.extcache.outputs.key }} | |
restore-keys: ${{ steps.extcache.outputs.key }} | |
- name: Setup PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ env.php-version }} | |
extensions: ${{ env.extensions }} | |
tools: composer, pecl | |
coverage: xdebug | |
- name: Setup problem matchers for PHP | |
run: echo "::add-matcher::${{ runner.tool_cache }}/php.json" | |
- uses: "ramsey/composer-install@v3" | |
- name: Setup Problem Matchers for PHPUnit | |
run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" | |
- name: Set Up Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version: '20' | |
- name: Install Firebase Tools | |
run: npm install -g firebase-tools | |
- name: Run emulated Integration Tests | |
env: | |
GOOGLE_APPLICATION_CREDENTIALS: ${{secrets.GOOGLE_APPLICATION_CREDENTIALS}} | |
TEST_FIREBASE_APP_ID: ${{secrets.TEST_FIREBASE_APP_ID}} | |
TEST_FIREBASE_RTDB_URI: ${{secrets.TEST_FIREBASE_RTDB_URI}} | |
TEST_FIREBASE_TENANT_ID: ${{secrets.TEST_FIREBASE_TENANT_ID}} | |
TEST_REGISTRATION_TOKENS: ${{secrets.TEST_REGISTRATION_TOKENS}} | |
FIREBASE_DATABASE_EMULATOR_HOST: localhost:9100 | |
FIREBASE_AUTH_EMULATOR_HOST: localhost:9099 | |
XDEBUG_MODE: coverage | |
run: firebase emulators:exec --only auth,database --project beste-firebase 'XDEBUG_MODE=coverage vendor/bin/phpunit --group=emulator --coverage-clover=coverage.xml --log-junit=test-report.xml' | |
- name: Upload code coverage | |
uses: codecov/[email protected] | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |
flags: emulator | |
if: github.repository_owner == 'kreait' |