-
-
Notifications
You must be signed in to change notification settings - Fork 0
44 lines (38 loc) · 1.48 KB
/
unit-tests.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
name: Unit Tests
on: [ push ]
jobs:
build:
runs-on: ubuntu-latest
environment: Godot Dev Env
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Cache Godot files
id: cache-godot
uses: actions/cache@v3
with:
path: |
~/.local/share/godot/**
/usr/local/bin/godot
~/.config/godot/**
key: ${{ runner.os }}-godot-${{ vars.GODOT_VERSION }}
- name: Download and config Godot Engine headless linux server
if: steps.cache-godot.outputs.cache-hit != 'true'
shell: bash
run: |
wget -q https://downloads.tuxfamily.org/godotengine/${{ vars.GODOT_VERSION }}/Godot_v${{ vars.GODOT_VERSION }}-stable_linux.x86_64.zip
mkdir ~/.cache
mkdir -p ~/.config/godot
unzip Godot_v${{ vars.GODOT_VERSION }}-stable_linux.x86_64.zip
mv Godot_v${{ vars.GODOT_VERSION }}-stable_linux.x86_64 /usr/local/bin/godot
# https://github.com/MikeSchulze/gdUnit4/blob/master/.github/workflows/ci-pr-example.yml
- name: "Update Project"
shell: bash
run: |
godot -e --path . -s res://addons/gdUnit4/bin/ProjectScanner.gd --headless --audio-driver Dummy || exit 0
- name: "Run Unit Tests"
timeout-minutes: 10
shell: bash
run: |
chmod +x ./addons/gdUnit4/runtest.sh
xvfb-run --auto-servernum ./addons/gdUnit4/runtest.sh --add "res://test" --audio-driver Dummy --display-driver x11 --rendering-driver opengl3 --screen 0 --continue