Skip to content

Issue when running Godot 4 + GUT 9.0.1 in CI/headless mode / Invalid call. Nonexistent function / GutRunner.gd:112 #491

Description

@char32

Hi,

I am seeing a strange issue with GUT 9.0.1 and Godot 4.

I have the following structure:
GUT: 9.0.1
Godot: 4.0.2
res://test/test_example.td contains my basic tests.
command line: Godot_v4.0.2-stable_linux.x86_64 -v --headless -s addons/gut/gut_cmdln.gd -gtest=res://test/test_example.gd -glog=3 -gexit

When I run that locally on my PC, everything succeeds.
But when I run the same command on my Godot CI pipeline I get:

$ godot -v --headless -s addons/gut/gut_cmdln.gd -gtest=res://test/test_example.gd -glog=3 -gexit
Godot Engine v4.0.2.stable.official.7a0977ce2 - https://godotengine.org/
TextServer: Added interface "Dummy"
TextServer: Added interface "ICU / HarfBuzz / Graphite (Built-in)"
Using "default" pen tablet driver...
JoypadLinux: udev enabled and loaded successfully.

TextServer: Primary interface set to: "ICU / HarfBuzz / Graphite (Built-in)".
CORE API HASH: 417986958
EDITOR API HASH: 95126707
Loaded builtin certs
SCRIPT ERROR: Parse Error: Could not find type "GutHookScript" in the current scope.
at: GDScript::reload (res://addons/gut/gut.gd:477)
--- Gut ---
SCRIPT ERROR: Invalid call. Nonexistent function 'new' in base 'GDScript'.
at: get_gut (res://addons/gut/gui/GutRunner.gd:112)
SCRIPT ERROR: Invalid call. Nonexistent function 'connect' in base 'Nil'.
at: _run_gut (res://addons/gut/gut_cmdln.gd:278)

The whole process freezes then.
Before calling that I have a import-asset stage that opens the editor once, so that this cannot cause an issue.

This could as-well be a bug in Godot itself. I had suspected godotengine/godot#73843 but renaming the Gut class to e.g. GutMain did not help.

Oh, and just displaying the GUT help works:
Godot_v4.0.2-stable_linux.x86_64 -v --headless -s addons/gut/gut_cmdln.gd -gh
So I expect the command is correct.

Metadata

Metadata

Assignees

No one assigned

    Labels

    ci/cd pipelineIssues around CI/CD Pipelines

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions