Skip to content

fix(task) #37 #38 #39 #40 #41 FileFetchTask and RemoveFileTask fixes, #33 add missing tests - #42

Merged
njoubert-cleverage merged 1 commit into
mainfrom
37
Oct 2, 2026
Merged

njoubert-cleverage merged 1 commit into
mainfrom
37

Conversation

@njoubert-cleverage

Copy link
Copy Markdown
Member

Description

Fixes #33.
Fixes #37.
Fixes #38.
Fixes #39.
Fixes #40.
Fixes #41.

Grouped in one PR because the fixes change the same tasks, tests, reference pages and the CHANGELOG Latest section.

FileFetchTask

RemoveFileTask

Tests (#33)

  • StorageTestCase (new): the tasks run on real local storages in a temporary directory (with a listing counter), iterating as the process manager does; symfony/filesystem added to require-dev for the cleanup.
  • FileFetchTaskStorageTest, ListContentTaskTest, RemoveFileTaskTest (new): pattern / input modes, one listing per input, several inputs, paths received twice, file 0, remove_source, overwriting, ignore_missing both ways, errors, options, logs.
  • CleverAgeFlysystemProcessExtensionTest, CleverAgeFlysystemProcessBundleTest (new): non-shared services with their storage locator and public aliases, bundle path.
  • FileFetchTaskTest: the source mock answers fileExists().

Coverage: 115/115 lines (35 tests). Without the fix, 9 of the new tests fail.

Documentation: file_fetch_task.md (ignore_missing, outputs, notes on listing / inputs / missing files), remove_file_task.md (inputs, logs), troubleshooting.md.

Checked with process-bundle-demo (see the demo PR):

Process Before After
demo.flysystem.fetch_multiple_inputs (a.txt, b.txt, a.txt, 0) a.txt, b.txt, then No pattern neither input provided for the Task a.txt, b.txt, a.txt, 0
demo.flysystem.fetch_pattern_multiple_inputs (2 inputs) a.txt, b.txt a.txt, b.txt, a.txt, b.txt
demo.flysystem.fetch_missing_input (missing.txt, a.txt) UnableToReadFile a.txt
demo.flysystem.remove_missing_file (a.txt, missing.txt, dir) missing.txt logged as deleted, Failed to deleted input file for dir Input file not found for missing.txt and dir
demo.flysystem.remove_files_input (['a.txt', 'b.txt']) TypeError both deleted
demo.flysystem.fetch_write_failure fails, source kept unchanged

Not changed: ListContentTask still lists the directories (audit point, documented and intended: it outputs StorageAttributes with their type).

Requirements

  • Documentation updates
    • Reference
    • Changelog
  • Unit tests

Breaking changes

🤖 Generated with Claude Code

…each input, ignore_missing on input files, file named 0, RemoveFileTask missing files and lists; #33 add missing tests

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
@njoubert-cleverage
njoubert-cleverage merged commit b645882 into main Oct 2, 2026
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment