|
6 | 6 | jobs: |
7 | 7 | unit-tests: |
8 | 8 | runs-on: ubuntu-latest |
| 9 | + env: |
| 10 | + APP_ENV: testing |
| 11 | + APP_DEBUG: true |
| 12 | + PHP_VERSION: "8.3" |
| 13 | + |
| 14 | + steps: |
| 15 | + - name: Check out repository code |
| 16 | + uses: actions/checkout@v4 |
| 17 | + |
| 18 | + - name: Install PHP |
| 19 | + uses: shivammathur/setup-php@v2 |
| 20 | + with: |
| 21 | + php-version: ${{ env.PHP_VERSION }} |
| 22 | + extensions: mbstring, exif, pcntl, bcmath |
| 23 | + |
| 24 | + - name: Install dependencies |
| 25 | + uses: ramsey/composer-install@v3 |
| 26 | + env: |
| 27 | + COMPOSER_AUTH: '{"github-oauth": {"github.com": "${{ secrets.COMPOSER_AUTH_TOKEN }}"} }' |
| 28 | + |
| 29 | + - name: Run Unit Tests |
| 30 | + run: | |
| 31 | + echo "running OpenTelemetry tests" |
| 32 | + vendor/bin/phpunit tests/OpenTelemetry/ --log-junit results_opentelemetry_tests.xml |
| 33 | +
|
| 34 | + - name: Upload OpenTelemetry Tests Output |
| 35 | + uses: actions/upload-artifact@v4 |
| 36 | + with: |
| 37 | + name: results_opentelemetry_tests |
| 38 | + path: results_opentelemetry_tests.xml |
| 39 | + retention-days: 5 |
| 40 | + |
| 41 | + integration-tests: |
| 42 | + runs-on: ubuntu-latest |
| 43 | + strategy: |
| 44 | + fail-fast: false |
| 45 | + matrix: |
| 46 | + suite: |
| 47 | + - { name: "OAuth2SummitApiTest", filter: "--filter OAuth2SummitApiTest" } |
| 48 | + - { name: "OAuth2SummitEventsApiTest", filter: "--filter OAuth2SummitEventsApiTest" } |
| 49 | + - { name: "OAuth2PresentationSubmissionTest", filter: "--filter OAuth2PresentationSubmissionTest" } |
| 50 | + - { name: "OAuth2EventTypesApiTest", filter: "--filter OAuth2EventTypesApiTest" } |
| 51 | + - { name: "OAuth2SummitBadgeScanApiControllerTest", filter: "--filter OAuth2SummitBadgeScanApiControllerTest" } |
| 52 | + - { name: "SummitOrderServiceTest", filter: "--filter SummitOrderServiceTest" } |
| 53 | + - { name: "SummitRSVPServiceTest", filter: "--filter SummitRSVPServiceTest" } |
| 54 | + - { name: "SummitRSVPInvitationServiceTest", filter: "--filter SummitRSVPInvitationServiceTest" } |
| 55 | + - { name: "OAuth2RSVPApiTest", filter: "--filter OAuth2RSVPApiTest" } |
| 56 | + - { name: "OAuth2RSVPApiWithMocksTest", filter: "--filter OAuth2RSVPApiWithMocksTest" } |
| 57 | + - { name: "OAuth2RSVPInvitationApiTest", filter: "--filter OAuth2RSVPInvitationApiTest" } |
| 58 | + - { name: "EntityModelUnitTests", filter: "tests/Unit/Entities/" } |
9 | 59 | env: |
10 | 60 | OTEL_SERVICE_ENABLED: false |
11 | 61 | APP_ENV: testing |
@@ -109,75 +159,18 @@ jobs: |
109 | 159 | env: |
110 | 160 | COMPOSER_AUTH: '{"github-oauth": {"github.com": "${{ secrets.COMPOSER_AUTH_TOKEN }}"} }' |
111 | 161 |
|
112 | | - - name: Run Tests |
| 162 | + - name: Run ${{ matrix.suite.name }} |
113 | 163 | run: | |
114 | 164 | ./update_doctrine.sh |
115 | 165 | php artisan db:create_test_db --schema=config |
116 | 166 | php artisan db:create_test_db --schema=model |
117 | 167 | php artisan doctrine:migrations:migrate --no-interaction --em=model_write |
118 | | - echo "running OAuth2SummitApiTest" |
119 | | - vendor/bin/phpunit --filter "OAuth2SummitApiTest" --log-junit results_summit_api_test.xml |
120 | | - echo "running OAuth2SummitEventsApiTest" |
121 | | - vendor/bin/phpunit --filter "OAuth2SummitEventsApiTest" --log-junit results_events_api_test.xml |
122 | | - echo "running OAuth2PresentationSubmissionTest" |
123 | | - vendor/bin/phpunit --filter "OAuth2PresentationSubmissionTest" --log-junit results_presentation_submissions_api_test.xml |
124 | | - echo "running OAuth2EventTypesApiTest" |
125 | | - vendor/bin/phpunit --filter "OAuth2EventTypesApiTest" --log-junit results_event_types_api_test.xml |
126 | | - echo "running model unit tests" |
127 | | - vendor/bin/phpunit tests/Unit/Entities/ --log-junit results_model_unit_tests.xml |
128 | | - echo "running OAuth2SummitBadgeScanApiControllerTest" |
129 | | - vendor/bin/phpunit --filter "OAuth2SummitBadgeScanApiControllerTest" --log-junit results_badge_scan_api_test.xml |
130 | | - echo "running SummitOrderService tests" |
131 | | - vendor/bin/phpunit --filter "SummitOrderServiceTest" --log-junit results_summitorder_service_unit_tests.xml |
132 | | - echo "running SummitRSVPServiceTest tests" |
133 | | - vendor/bin/phpunit --filter "SummitRSVPServiceTest" --log-junit results_rsvp_service_unit_tests.xml |
134 | | - echo "running SummitRSVPInvitationServiceTest tests" |
135 | | - vendor/bin/phpunit --filter "SummitRSVPInvitationServiceTest" --log-junit results_rsvp_invitation_service_unit_tests.xml |
136 | | - echo "running OAuth2RSVPApiTest tests" |
137 | | - vendor/bin/phpunit --filter "OAuth2RSVPApiTest" --log-junit results_rsvp_api_test_unit_tests.xml |
138 | | - echo "running OAuth2RSVPApiWithMocksTest tests" |
139 | | - vendor/bin/phpunit --filter "OAuth2RSVPApiWithMocksTest" --log-junit results_rsvp_api_with_mocks_test_unit_tests.xml |
140 | | - echo "running OAuth2RSVPInvitationApiTest tests" |
141 | | - vendor/bin/phpunit --filter "OAuth2RSVPInvitationApiTest" --log-junit results_rsvp_invitations_api_test_unit_tests.xml |
142 | | -
|
143 | | - - name: Upload Unit Test Output For OAuth2SummitApiTest |
144 | | - uses: actions/upload-artifact@v4 |
145 | | - with: |
146 | | - name: results_summit_api_test |
147 | | - path: results_summit_api_test.xml |
148 | | - retention-days: 5 |
149 | | - |
150 | | - - name: Upload Unit Test Output For OAuth2SummitEventsApiTest |
151 | | - uses: actions/upload-artifact@v4 |
152 | | - with: |
153 | | - name: results_events_api_test |
154 | | - path: results_events_api_test.xml |
155 | | - retention-days: 5 |
156 | | - |
157 | | - - name: Upload Unit Test Output For OAuth2PresentationSubmissionTest |
158 | | - uses: actions/upload-artifact@v4 |
159 | | - with: |
160 | | - name: results_presentation_submissions_api_test |
161 | | - path: results_presentation_submissions_api_test.xml |
162 | | - retention-days: 5 |
163 | | - |
164 | | - - name: Upload Entity Model Unit Tests Output |
165 | | - uses: actions/upload-artifact@v4 |
166 | | - with: |
167 | | - name: results_model_unit_tests |
168 | | - path: results_model_unit_tests.xml |
169 | | - retention-days: 5 |
170 | | - |
171 | | - - name: Upload Unit Test Output For OAuth2SummitBadgeScanApiControllerTest |
172 | | - uses: actions/upload-artifact@v4 |
173 | | - with: |
174 | | - name: results_badge_scan_api_test |
175 | | - path: results_badge_scan_api_test.xml |
176 | | - retention-days: 5 |
| 168 | + echo "running ${{ matrix.suite.name }}" |
| 169 | + vendor/bin/phpunit ${{ matrix.suite.filter }} --log-junit results.xml |
177 | 170 |
|
178 | | - - name: Upload Unit Test Output For SummitOrderServiceTest |
| 171 | + - name: Upload Test Results |
179 | 172 | uses: actions/upload-artifact@v4 |
180 | 173 | with: |
181 | | - name: results_summitorder_service_unit_tests |
182 | | - path: results_summitorder_service_unit_tests.xml |
| 174 | + name: results_${{ matrix.suite.name }} |
| 175 | + path: results.xml |
183 | 176 | retention-days: 5 |
0 commit comments