Skill
Community

gdunit4-test-writer

Install
1
Install the plugin
$
npx claudepluginhub minami110/claude-godot-tools --plugin gdunit4-toolkit

Want just this skill?

Then install: npx claudepluginhub u/[userId]/[slug]

Description

Write gdUnit4 test code with type-specific assertions, signal testing, and scene runner support. Use when creating or updating tests for GDScript files.

Tool Access

This skill is limited to using the following tools:

mcp__context7__resolve-library-idmcp__context7__query-docsReadWriteEditGlobGrep
Supporting Assets
View in Repository
references/assertions.md
references/scene-runner.md
references/signals.md
references/test-structure.md
Skill Content

gdUnit4 Test Writer

Write gdUnit4 test code for GDScript files with proper assertions and test structure.

Workflow

  1. Analyze target file - Read the GDScript file to understand what needs testing
  2. Check gdUnit4 docs - Use Context7 (/websites/godot-gdunit-labs_github_io_gdunit4) if needed
  3. Select assertions - Use type-specific assertions (see [references/assertions.md])
  4. Create test file - Place in res://tests/ directory with test_*.gd naming (e.g., test_player.gd)

Quick Reference

Test File Template

extends GdUnitTestSuite

func test_example() -> void:
    assert_int(1).is_equal(1)

Common Assertions

  • int: assert_int(value).is_equal(10)
  • float: assert_float(value).is_equal_approx(3.14, 0.01)
  • String: assert_str(text).contains("hello")
  • Array: assert_array(items).has_size(5)
  • Object: assert_object(node).is_not_null()
  • Signal: await assert_signal(emitter).is_emitted("signal_name")

Memory Management

func test_with_node() -> void:
    var node: Node = auto_free(Node.new())  # Auto-freed after test
    assert_object(node).is_not_null()

References

Context7 Library ID

For detailed gdUnit4 documentation:

  • Library ID: /websites/godot-gdunit-labs_github_io_gdunit4
Stats
Stars4
Forks0
Last CommitFeb 19, 2026

Similar Skills