Expand documented-feature test coverage and drop leftover APIs (0.5.0) #161

Merged
ValleyGeek merged 11 commits from 0.4.3/issue-160-test-coverage into main 2026-08-13 06:45:02 +00:00
Member

Summary

Issue #160. Locks documented product intent in automated tests, aligns leftover code with the user guide, and bumps VERSION to 0.5.0.

Tests

  • Sort by Date and Tag Priority
  • Search persist / all-options-off / metadata worker cancel
  • Visual DupeWorker scan and cancel
  • Dupe Grid Hide Deleted, Trash Clear Deleted Flag, Confirm Delete undo-stack
  • Settings Image Types, shortcut editor, Tag Filter search/clear
  • Crop/mirror toolbar from Grid only
  • Replaced no-assert / tautological cases; folded the overlapping dupe-tag filter test

Product alignment

  • Viewer and Duplicates Multi load at full resolution by default (no 2048px cap)
  • Filters, cleanup, panel exclusion, and sort recognize legacy DUPE-FILE_ / DUPE_ / Dupe_ prefixes
  • Removed unused leftover APIs (old Keep Best picker, metadata-only share export, unused scan/path wrappers)

CI

  • Linux AppImage job treats release_build_needed.py exit 1 (no build inputs) as a successful skip, matching Windows

The bundled user guide already described this behavior; no USER_GUIDE edits in this PR. compiled-inputs-changed.sh origin/main exits 0 (src/ + VERSION).

Test plan

  • ./scripts/check-version-bump.sh origin/main0.4.30.5.0
  • Folded dupe-filter test + tests/test_version.py
  • Earlier branch runs: ruff + the expanded suite on this branch
  • CI lint / pytest / AppImage (this commit changes linux-appimage.yml, so the AppImage job should build)
## Summary Issue #160. Locks documented product intent in automated tests, aligns leftover code with the user guide, and bumps `VERSION` to **0.5.0**. ### Tests - Sort by Date and Tag Priority - Search persist / all-options-off / metadata worker cancel - Visual `DupeWorker` scan and cancel - Dupe Grid Hide Deleted, Trash Clear Deleted Flag, Confirm Delete undo-stack - Settings Image Types, shortcut editor, Tag Filter search/clear - Crop/mirror toolbar from Grid only - Replaced no-assert / tautological cases; folded the overlapping dupe-tag filter test ### Product alignment - Viewer and Duplicates Multi load at full resolution by default (no 2048px cap) - Filters, cleanup, panel exclusion, and sort recognize legacy `DUPE-FILE_` / `DUPE_` / `Dupe_` prefixes - Removed unused leftover APIs (old Keep Best picker, metadata-only share export, unused scan/path wrappers) ### CI - Linux AppImage job treats `release_build_needed.py` exit 1 (no build inputs) as a successful skip, matching Windows The bundled user guide already described this behavior; no USER_GUIDE edits in this PR. `compiled-inputs-changed.sh origin/main` exits 0 (`src/` + `VERSION`). ## Test plan - [x] `./scripts/check-version-bump.sh origin/main` — `0.4.3` → `0.5.0` - [x] Folded dupe-filter test + `tests/test_version.py` - [x] Earlier branch runs: ruff + the expanded suite on this branch - [ ] CI lint / pytest / AppImage (this commit changes `linux-appimage.yml`, so the AppImage job should build)
Grok added 11 commits 2026-08-13 06:15:03 +00:00
Lock the documented sort keys that were implemented but untested, including
Tag Priority ignoring DELETE and duplicate-prefix tags.
Assert documented search intent: all options off matches nothing, term and
options persist across restart, opening a directory clears the term, and the
background metadata worker adds only non-fast hits.
Add visual DupeWorker coverage (V-DUPE tags, no exact hash), cancel during
hash vs assignment (groups found so far are kept), and Dupe Grid Hide Deleted
dropping only fully deleted groups while the right-column list stays intact.
test: Cover trash, image types, shortcuts, and related UI intent
Some checks failed
CI / lint (push) Successful in 20s
CI / test (push) Successful in 3m43s
CI / appimage (push) Failing after 15s
CI / build-appimage (push) Failing after 0s
CI / build-windows-exe (push) Has been cancelled
CI / windows-exe (push) Has been cancelled
5ec5b85bc3
Add regression tests for Clear Deleted Flag (filter-scoped, undoable), Confirm
Delete clearing the undo stack, Image Types prune, thumbnail resolution
regeneration, shortcut editor duplicate-reject and Reset All, Tag Filter
search/clear, and crop/mirror hidden in Duplicates Single.
test: Replace weak suite cases with real assertions
Some checks failed
CI / lint (push) Successful in 15s
CI / test (push) Successful in 2m59s
CI / appimage (push) Failing after 11s
CI / build-appimage (push) Failing after 0s
CI / windows-exe (push) Successful in 27s
CI / build-windows-exe (push) Successful in 0s
2a3e8f0948
Remove no-assert smoke, existence-only, tautological version identity, and
duplicate proxy/help/icon checks. Give Keep criteria and Multi layout exact
winners, assert theme palette/current_theme, rescan Cancel vs Re-scan labels,
closeEvent shutdown, Tag Filter dupe-section toggle, and skip instead of
silent return when git refs are missing.
fix: Align dupe prefixes and viewer loads with the documented product
All checks were successful
CI / lint (push) Successful in 15s
CI / test (push) Successful in 2m59s
CI / appimage (push) Successful in 15m37s
CI / build-appimage (push) Successful in 0s
CI / windows-exe (push) Successful in 20m23s
CI / build-windows-exe (push) Successful in 0s
f1bcc9984b
Recognize legacy DUPE-FILE_, DUPE_, and Dupe_ tags in filters, cleanup,
and sort/panel classification, matching the user guide. Load viewer and
Dupe Multi images at full resolution by default. Tests now assert those
contracts instead of the narrower F-/V-DUPE-only helpers and the old
2048px downscale default.
refactor: Remove leftover core APIs no longer used by the product
Some checks failed
CI / test (push) Has been cancelled
CI / build-appimage (push) Has been cancelled
CI / build-windows-exe (push) Has been cancelled
CI / appimage (push) Has been cancelled
CI / windows-exe (push) Has been cancelled
CI / lint (push) Has been cancelled
6c8692f4df
Drop unused Keep Best helpers, metadata-only share export, unused scan
path helpers, the unused dupe-tag-filter module, and other wrappers that
only tests still called. Retarget those tests onto the live Keep, scan,
import, and tag-filter paths.
chore: Stop tracking the local AppImage venv
Some checks failed
CI / lint (push) Successful in 16s
CI / test (push) Successful in 3m0s
CI / build-appimage (push) Has been cancelled
CI / build-windows-exe (push) Has been cancelled
CI / windows-exe (push) Has been cancelled
CI / appimage (push) Has been cancelled
48318dd5bb
The previous cleanup commit accidentally added .linux-appimage-venv.
Ignore that directory like other virtualenvs.
test: Fold overlapping dupe-tag filter assertions
Some checks failed
CI / lint (push) Successful in 20s
CI / test (push) Successful in 3m8s
CI / build-appimage (push) Has been cancelled
CI / build-windows-exe (push) Has been cancelled
CI / windows-exe (push) Has been cancelled
CI / appimage (push) Has been cancelled
dafd069097
Move empty-filter and unmatched-tag checks into the existing
get_dupe_tag_summaries test and drop the retargeted duplicate.
ci: Treat AppImage no-build skip as success
Some checks failed
CI / lint (push) Successful in 20s
CI / test (push) Successful in 3m8s
CI / build-appimage (push) Has been cancelled
CI / build-windows-exe (push) Has been cancelled
CI / windows-exe (push) Has been cancelled
CI / appimage (push) Has been cancelled
2651608e18
release_build_needed.py exits 1 when Linux build inputs did not change.
The detect step ran that under set -e, so the job failed before it could
set needs_build=false. Capture the exit code like the Windows job and
leave the existing Skip notice step as the happy path.
docs: PR-prep for 0.5.0
All checks were successful
CI / lint (push) Successful in 17s
CI / test (push) Successful in 3m6s
CI / appimage (push) Successful in 16m15s
CI / build-appimage (push) Successful in 0s
CI / windows-exe (push) Successful in 20m30s
CI / build-windows-exe (push) Successful in 0s
4b6bc01135
Replace the development VERSION with 0.5.0 and record user-visible
alignment (full-resolution viewer/Multi, legacy dupe prefixes), leftover
API removal, and the AppImage skip-success CI fix.
ValleyGeek deleted branch 0.4.3/issue-160-test-coverage 2026-08-13 06:45:03 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
ai-collab/bulk-image-organizer!161
No description provided.