initial: inventory-list-display-test v0.1.0 — 9 assertions
Covers: create round-trip, non-container loud-error, action register/unregister lifecycle, duplicate label + non-function callback loud-errors, empty default action-set, contents ordering via _test_get_rows, default icon-resolver property reads, custom icon-resolver override via set_icon_resolver.
This commit is contained in:
32
README.md
Normal file
32
README.md
Normal file
@@ -0,0 +1,32 @@
|
||||
# lib-core.inventory-list-display-test
|
||||
|
||||
Test module for `lib-core.inventory-list-display`. Runs 9 assertions
|
||||
headless via `engine.test.*` (TAP output).
|
||||
|
||||
**Version:** 0.1.0
|
||||
**Lib-ID:** lib-core.inventory-list-display-test
|
||||
**Role:** test
|
||||
**Requires:** lib-core.inventory-list-display v0.1.0, lib-core.inventory-list v0.1.0, lib-core.composition v0.2.0
|
||||
|
||||
## Running
|
||||
|
||||
```bash
|
||||
export PATH="/c/msys64/mingw64/bin:$PATH"
|
||||
cd ~/Projects/Sporel/sporel-engine
|
||||
SPOREL_LIBS_DIR=~/Projects/Sporel/sporel-libs SPOREL_CI=1 SPOREL_LOG_STDERR=1 \
|
||||
./build/Sporel.exe --test-libs=lib-core.inventory-list-display-test 2>&1 | tail -15
|
||||
```
|
||||
|
||||
Expected: `pass=N fail=0` where N >= 9.
|
||||
|
||||
## Assertions
|
||||
|
||||
1. `create` returns widget_def with `render`, `handle_input`, and correct `title`
|
||||
2. `create` with a non-container entity loud-errors
|
||||
3. `register_action` + `unregister_action` round-trip completes without error
|
||||
4. Duplicate action label loud-errors
|
||||
5. Non-function callback loud-errors
|
||||
6. Default action-set is empty; `unregister_action` on unknown label is a no-op
|
||||
7. `_test_get_rows` returns items in `inventory.contents` order
|
||||
8. Default icon-resolver reads `sprite_atlas` and `sprite_uv.*` from item properties
|
||||
9. Custom icon-resolver is invoked after `set_icon_resolver`
|
||||
Reference in New Issue
Block a user