Skip to content

test fix

test fix #24

name: PS1786 + E2E Cypress
on: [push]
jobs:
Cypress-E2E-1786:
runs-on: ubuntu-latest
env:
NGROK_TOKEN: ${{ secrets.NGROK_TOKEN }}
strategy:
fail-fast: false
matrix:
containers: [1]
steps:
- name: Checkouting
uses: actions/checkout@v2.4.2
- run: wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip
shell: bash
- run: unzip -qq -o ngrok-stable-linux-amd64.zip
shell: bash
- run: ./ngrok authtoken ${{ secrets.NGROK_TOKEN }}
shell: bash
- run: ./ngrok http --log=stdout -subdomain=sp1786 8002 > ngrok.log &
shell: bash
- name: Extract ngrok URL
run: |
sleep 10 # Give ngrok some time to start up
echo "Checking if ngrok is running..."
ps aux | grep ngrok
echo "Contents of ngrok.log:"
cat ngrok.log
NGROK_URL=$(grep -o 'url=https://[^[:space:]]*' ngrok.log | cut -d= -f2 | head -n1)
echo "NGROK_URL=$NGROK_URL" >> $GITHUB_ENV
shell: bash
- name: Use ngrok URL
run: echo "The ngrok URL is ${{ env.NGROK_URL }}"
- name: Installing composer
run: composer i
- name: Installing NPM, NPX packages
run: npm ci & npx browserslist@latest --update-db
- name: PS1786 installing / Module Install and Uninstall testing...
run: |
make e2eh1786
- name: Cypress E2E Tests
uses: cypress-io/github-action@v6
with:
record: true
parallel: true
group: 'SaferpayTests'
spec: cypress/e2e/moduleConfig.cy.js
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CYPRESS_SAFERPAY_USERNAME_TEST: ${{ secrets.PS1786_SAFERPAY_USERNAME_TEST }}
CYPRESS_SAFERPAY_PASSWORD_TEST: ${{ secrets.PS1786_SAFERPAY_PASSWORD_TEST }}
CYPRESS_SAFERPAY_CUSTOMER_ID_TEST: ${{ secrets.PS1786_SAFERPAY_CUSTOMER_ID_TEST }}
CYPRESS_SAFERPAY_TERMINAL_ID_TEST: ${{ secrets.PS1786_SAFERPAY_TERMINAL_ID_TEST }}
CYPRESS_SAFERPAY_MERCHANT_EMAILS_TEST: ${{ secrets.SAFERPAY_MERCHANT_EMAILS_TEST }}
CYPRESS_SAFERPAY_FIELDS_ACCESS_TOKEN_TEST: ${{ secrets.PS1786_SAFERPAY_FIELDS_ACCESS_TOKEN_TEST }}
NGROK_URL: ${{ env.NGROK_URL }}
- name: Archive videos and screenshots of Cypress testing
if: ${{ always() }}
uses: actions/upload-artifact@v3.1.0
with:
name: videos_screenshots
retention-days: 2
path: |
cypress/videos
cypress/screenshots
Stop-ngrok:
runs-on: ubuntu-latest
needs: Cypress-E2E-1786
if: always()
steps:
- name: Stop ngrok process
run: |
pkill ngrok || echo "ngrok process not found"
shell: bash