Skip to content

Live Preview element selection after property edits lands to incorrect pos because of phoenix internal elements #2853

Live Preview element selection after property edits lands to incorrect pos because of phoenix internal elements

Live Preview element selection after property edits lands to incorrect pos because of phoenix internal elements #2853

name: 'Desktop-Linux full test suite run on pull request'
on:
pull_request:
branches: [ main ]
concurrency:
group: pr-desktop-linux-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
test-desktop-linux:
runs-on: ubuntu-22.04
timeout-minutes: 90
steps:
- uses: actions/checkout@v4
- name: setup node
uses: actions/setup-node@v4
with:
node-version: 24
- name: install dependencies (ubuntu only)
run: |
sudo apt-get update
sudo apt install build-essential curl wget file libssl-dev
sudo apt-get install xvfb
# libfuse2 is required for AppImages to run
sudo apt-get install libfuse2
- name: build phoenix dist-test
env:
PRO_REPO_URL: ${{ secrets.PRO_REPO_URL }}
PRO_REPO_ACCESS_TOKEN: ${{ secrets.PRO_REPO_ACCESS_TOKEN }}
run: |
npm ci
npm run build
npm run release:dev
- name: Download phoenix desktop and build test runner
env:
GH_TOKEN: ${{ github.token }}
PRO_REPO_URL: ${{ secrets.PRO_REPO_URL }}
PRO_REPO_ACCESS_TOKEN: ${{ secrets.PRO_REPO_ACCESS_TOKEN }}
run: |
cd ..
git clone https://github.com/phcode-dev/phoenix-desktop.git
cd phoenix-desktop
npm ci
npm run releaseDistTestDebug
- name: Run desktop unit tests
uses: nick-fields/retry@v3
id: linuxRunUnit
continue-on-error: true
with:
timeout_minutes: 12
max_attempts: 3
command: xvfb-run ../phoenix-desktop/src-electron/dist/phoenix-test-runner.appimage --run-tests=unit -q
- name: Run desktop integration tests
uses: nick-fields/retry@v3
id: linuxRunIntegration
continue-on-error: true
with:
timeout_minutes: 12
max_attempts: 3
command: xvfb-run ../phoenix-desktop/src-electron/dist/phoenix-test-runner.appimage --run-tests=integration -q
- name: Run desktop mainview tests
uses: nick-fields/retry@v3
id: linuxRunMainview
continue-on-error: true
with:
timeout_minutes: 12
max_attempts: 3
command: xvfb-run ../phoenix-desktop/src-electron/dist/phoenix-test-runner.appimage --run-tests=mainview -q
- name: Run desktop livepreview tests
uses: nick-fields/retry@v3
id: linuxRunLivepreview
continue-on-error: true
with:
timeout_minutes: 12
max_attempts: 3
command: xvfb-run ../phoenix-desktop/src-electron/dist/phoenix-test-runner.appimage --run-tests=livepreview -q
- name: Run desktop LegacyInteg tests
uses: nick-fields/retry@v3
id: linuxRunLegacyInteg
continue-on-error: true
with:
timeout_minutes: 20
max_attempts: 3
command: xvfb-run ../phoenix-desktop/src-electron/dist/phoenix-test-runner.appimage --run-tests=LegacyInteg -q
- name: Fail on test runs failed in Linux
if: steps.linuxRunUnit.outcome == 'failure' || steps.linuxRunIntegration.outcome == 'failure' || steps.linuxRunMainview.outcome == 'failure' || steps.linuxRunLivepreview.outcome == 'failure' || steps.linuxRunLegacyInteg.outcome == 'failure'
run: |
echo "Linux tests failed, marking step as failed"
echo "Failed tests:"
if [ "${{ steps.linuxRunUnit.outcome }}" == "failure" ]; then
echo "- Run desktop unit tests"
fi
if [ "${{ steps.linuxRunIntegration.outcome }}" == "failure" ]; then
echo "- Run desktop integration tests"
fi
if [ "${{ steps.linuxRunMainview.outcome }}" == "failure" ]; then
echo "- Run desktop mainview tests"
fi
if [ "${{ steps.linuxRunLivepreview.outcome }}" == "failure" ]; then
echo "- Run desktop livepreview tests"
fi
if [ "${{ steps.linuxRunLegacyInteg.outcome }}" == "failure" ]; then
echo "- Run desktop LegacyInteg tests"
fi
exit 1