rdt-client/server/RdtClient.Service/Helpers
Claude 582bbd7a78
fix: address review feedback on filename sanitizer
- Revert GetFileName to return unsanitized name. AllDebridDebridClient.
  GetSymlinkPath matches torrent.Files[].Path (original debrid data)
  against GetFileName, so sanitizing it broke AllDebrid Symlink lookups
  for any torrent with bracketed filenames. Sanitization now happens
  inside GetDownloadPath at the point the filesystem path is assembled,
  while matching still uses the unsanitized name.

- Make SanitizeFilename / SanitizePath accept String? and return
  String.Empty for null/empty input so the declared non-null return
  type is honoured.

- SanitizePath splits on both '/' and '\\' regardless of host OS, so
  paths arriving from the debrid provider with foreign separators are
  still segmented correctly on Linux containers.

- Rewrite the control-character tests to use explicit \u escape
  sequences (, , , €, Ÿ) so the test
  inputs are visible in diffs and survive editor/CI round-trips.
  Replace the single-row empty [Theory] with a [Fact] and add a null
  case. Add tests asserting SanitizeFilenameIfEnabled and
  SanitizePathIfEnabled return input unchanged when the toggle is
  disabled, and sanitize when enabled.
2026-04-23 06:55:34 +00:00
..
CredentialRedactorEnricher.cs Cleanup. 2026-02-23 20:04:53 -07:00
DownloadHelper.cs fix: address review feedback on filename sanitizer 2026-04-23 06:55:34 +00:00
FileHelper.cs Cleanup. 2026-02-23 20:04:53 -07:00
FilenameSanitizer.cs fix: address review feedback on filename sanitizer 2026-04-23 06:55:34 +00:00
FileSizeHelper.cs Cleanup. 2026-02-23 20:04:53 -07:00
IDelayProvider.cs Use ISynologyClient (mockable) and inject IDelayProvider so SynologyTorrentClient is testable 2025-02-17 22:00:19 +00:00
IRateLimitCoordinator.cs Refactor TorBoxDebridClientTest to include IRateLimitCoordinator and improve test consistency across methods. Updated logging and error handling for rate-limiting scenarios. 2026-03-07 17:57:42 -05:00
JsonModelBinder.cs Global formatting. 2026-02-11 19:44:49 -07:00
Logger.cs Cleanup. 2026-02-23 20:04:53 -07:00
RateLimitCoordinator.cs Run formatters. 2026-03-14 13:41:30 -06:00
RateLimitHandler.cs Run formatters. 2026-03-14 13:41:30 -06:00