fix(templates): replace equality check with pattern matching in rewrite_template_file (CSM-027)

This commit is contained in:
2026-05-11 20:06:15 +02:00
parent 1cb59d7a78
commit 782511d523
2 changed files with 10 additions and 9 deletions

View File

@@ -414,9 +414,11 @@
--- ---
### CSM-027 — `if result == :ok` Instead of Pattern Matching ### ~~CSM-027 — `if result == :ok` Instead of Pattern Matching~~ ✅ FIXED
- **File:** `lib/bds/templates.ex:445` - **Fixed:** 2026-05-11
- **Fix:** Use `case result do :ok -> ...; _ -> ... end`. - **What was done:**
- Replaced `if result == :ok and ...` in `rewrite_template_file/2` with a `case` expression using pattern matching and a `when` guard.
- `Persistence.atomic_write` result is now matched directly: `:ok when file_path changed` triggers old file cleanup, `other` (including `{:error, _}`) is returned as-is.
--- ---

View File

@@ -448,13 +448,12 @@ defmodule BDS.Templates do
body = published_template_body(original_template) body = published_template_body(original_template)
new_full_path = full_file_path(updated_template.project_id, updated_template.file_path) new_full_path = full_file_path(updated_template.project_id, updated_template.file_path)
result = case Persistence.atomic_write(new_full_path, serialize_template_file(updated_template, body)) do
Persistence.atomic_write(new_full_path, serialize_template_file(updated_template, body)) :ok when original_template.file_path != updated_template.file_path ->
delete_file_if_present(original_template.project_id, original_template.file_path)
if result == :ok and original_template.file_path != updated_template.file_path do other ->
delete_file_if_present(original_template.project_id, original_template.file_path) other
else
result
end end
end end