Commit graph jw-pkg/test/unit/python/jw/pkg/lib/ProjectConf
Author SHA1 Message Date
ad9c5b581a
lib.ProjectConf: Clean up temp files
The _load() helper in test/unit/python/jw/pkg/lib/ProjectConf/test.py
uses tempfile.NamedTemporaryFile(..., delete=False) but never removes
the created files. Each test call leaked a .conf file in /tmp.

Track all created paths in a _tmpfiles list and call _cleanup() at the
end of the test to unlink them.

Assisted-by: unsloth/Qwen3.6-35B-A3B-GGUF:IQ4_NL with pi.dev v0.80.2
Signed-off-by: Jan Lindemann <jan@janware.com>
2026-07-04 07:35:06 +02:00
Jan Lindemann
2ca66e34ba
test: ProjectConf: Add unit tests
Add unit tests for the new ProjectConf module covering:

  - Basic string and list value retrieval (get_str(), get_str_or_none(),
    get_list(), get_list_or_none())
  - Quoted values with preserved spaces and comment delimiters
  - Inline comments outside quotes
  - Comma-separated lists with quoted commas
  - Line continuations
  - Multiple sections
  - Error cases: empty key, missing key/section, malformed sections,
    unfinished continuations, unclosed quotes
  - Error class is a subclass of ValueError

Also include a Makefile for running tests via `make test`.

Assisted-by: unsloth/Qwen3.6-35B-A3B-GGUF:IQ4_NL and pi.dev
Signed-off-by: Jan Lindemann <jan@janware.com>
2026-06-30 12:46:42 +02:00