Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
891ea2c
test working live-test html
tintinthong Mar 19, 2026
a486ac3
fix lint
tintinthong Mar 19, 2026
34fd893
allow non -test files
tintinthong Mar 19, 2026
e519d04
Merge branch 'main' into is-live-test
tintinthong Mar 23, 2026
76adf2f
noop shim for test helpers
tintinthong Mar 23, 2026
5eaa4ed
cleanup
tintinthong Mar 23, 2026
9818cf1
run ci test from publicly readable realm
tintinthong Mar 23, 2026
8b04074
lint and prettify
tintinthong Mar 23, 2026
d5bb4a7
add eslint
tintinthong Mar 24, 2026
8ef968d
Merge branch 'main' into is-live-test
tintinthong Mar 24, 2026
4a69407
refactor test helpers tht run qunit
tintinthong Mar 24, 2026
e3fa9ef
fix lint
tintinthong Mar 24, 2026
c9bff23
fix lint
tintinthong Mar 24, 2026
6d10e3d
attempt to have tests in separate files under -test
tintinthong Mar 24, 2026
916b93d
allow test for nested directory
tintinthong Mar 24, 2026
eedac25
use mtimes for faster process
tintinthong Mar 25, 2026
f81bc4a
make setupBaseRealm available
tintinthong Mar 25, 2026
8a9fe83
shim helpers
tintinthong Mar 25, 2026
ca0c352
prettify
tintinthong Mar 25, 2026
96ffd66
shim more
tintinthong Mar 25, 2026
5084271
include tests folders
tintinthong Mar 25, 2026
6f875ee
remove sample command card
tintinthong Mar 25, 2026
b24d62d
ok remove tests
tintinthong Mar 25, 2026
303ef1b
throw errors if needed
tintinthong Mar 25, 2026
fa59bfb
confirmed lets run the test with all catalog files. External CI will …
tintinthong Mar 25, 2026
6e73244
fix so do not load the instances
tintinthong Mar 25, 2026
b7fd422
prettify
tintinthong Mar 25, 2026
803376c
run again
tintinthong Mar 25, 2026
9fc1603
dont errorr if there are not test
tintinthong Mar 25, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
66 changes: 66 additions & 0 deletions .github/workflows/ci-host.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,72 @@ jobs:
group: ci-host-test-web-assets-${{ github.head_ref || github.run_id }}
cancel-in-progress: true

live-test:
name: Live Tests (realm)
runs-on: ubuntu-latest
needs: test-web-assets
concurrency:
group: boxel-live-test-${{ github.head_ref || github.run_id }}
cancel-in-progress: true
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- uses: ./.github/actions/init

- name: Download test web assets
uses: actions/download-artifact@b14cf4c92620c250e1c074ab0a5800e37df86765 # 4.2.0
with:
name: ${{ needs.test-web-assets.outputs.artifact_name }}
path: .test-web-assets-artifact
- name: Restore test web assets into workspace
shell: bash
run: |
shopt -s dotglob
cp -a .test-web-assets-artifact/. ./

- name: Serve boxel-icons
run: pnpm serve &> /tmp/icon-server.log &
working-directory: packages/boxel-icons

- name: Disable TCP/UDP network offloading
run: sudo ethtool -K eth0 tx off rx off
- name: Serve host dist (test assets) for realm server
uses: JarvusInnovations/background-action@2428e7b970a846423095c79d43f759abf979a635 # 1.0.7
with:
run: pnpm serve:dist &
working-directory: packages/host
wait-for: 3m
wait-on: http-get://localhost:4200
- name: Start realm servers
run: pnpm start:services-for-host-tests | tee -a /tmp/server.log &
working-directory: packages/realm-server
- name: Create realm users
run: pnpm register-realm-users
working-directory: packages/matrix

- name: Install D-Bus helpers
run: |
sudo apt-get update
sudo apt-get install -y dbus-x11 upower
sudo service dbus restart
sudo service upower restart

- name: Live test suite
run: dbus-run-session -- pnpm test:live
working-directory: packages/host
env:
DBUS_SYSTEM_BUS_ADDRESS: unix:path=/run/dbus/system_bus_socket

- name: Upload junit report
uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # 4.6.1
if: ${{ !cancelled() }}
with:
name: host-live-test-report
path: junit/host-live.xml
retention-days: 30
- name: Print realm server logs
if: ${{ !cancelled() }}
run: cat /tmp/server.log

host-test:
name: Host Tests
runs-on: ubuntu-latest
Expand Down
28 changes: 6 additions & 22 deletions mise-tasks/test-services-host
Original file line number Diff line number Diff line change
Expand Up @@ -13,36 +13,20 @@ cleanup() {
}
trap cleanup EXIT INT TERM

# Always include key config files so the realm loads correctly.
for f in .realm.json package.json tsconfig.json .gitignore; do
if [ -e "$CATALOG_SRC_PATH/$f" ]; then
cp -a "$CATALOG_SRC_PATH/$f" "$CATALOG_TEMP_PATH/"
fi
done

# We need the Spec folder for one of the tests
mkdir -p "$CATALOG_TEMP_PATH/Spec"
cp -a "$CATALOG_SRC_PATH/Spec/grid.json" "$CATALOG_TEMP_PATH/Spec/"

# Explicitly keep only the tested parts of the catalog
# Copy required folders
KEEP_FOLDERS="fields catalog-app components commands"
for item in $KEEP_FOLDERS; do
if [ -d "$CATALOG_SRC_PATH/$item" ]; then
cp -a "$CATALOG_SRC_PATH/$item" "$CATALOG_TEMP_PATH/"
else
echo "ERROR: required catalog item not found: $item" >&2
echo "ERROR: required catalog folder not found: $item" >&2
exit 1
fi
done
# Explicitly keep some files needed for the tests
KEEP_FILES="cloudflare-image.gts index.json Spec/f869024a-cdec-4a73-afca-d8d32f258ead.json"
for item in $KEEP_FILES; do
if [ -f "$CATALOG_SRC_PATH/$item" ]; then
cp -a "$CATALOG_SRC_PATH/$item" "$CATALOG_TEMP_PATH/$item"
else
echo "ERROR: required catalog item not found: $item" >&2
exit 1
fi

# Copy all root-level files (e.g. *.gts, *.json, config files)
find "$CATALOG_SRC_PATH" -maxdepth 1 -type f | while read -r f; do
cp -a "$f" "$CATALOG_TEMP_PATH/"
done

export CATALOG_REALM_PATH="$CATALOG_TEMP_PATH"
Expand Down
112 changes: 0 additions & 112 deletions packages/experiments-realm/sample-command-card.gts

This file was deleted.

1 change: 1 addition & 0 deletions packages/host/.eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -108,6 +108,7 @@ module.exports = {
'./.template-lintrc.js',
'./ember-cli-build.js',
'./testem.js',
'./testem-live.js',
'./blueprints/*/index.js',
'./config/**/*.js',
'./lib/**/*.js',
Expand Down
Loading
Loading