diff --git a/src/assets/templates.jl b/src/assets/templates.jl index 6d95908..d854349 100644 --- a/src/assets/templates.jl +++ b/src/assets/templates.jl @@ -20,7 +20,12 @@ function make_email_signature(name, role, email, phone) Phone: {{phone}} """ - return render(template, name=name, role=role, email=email, phone=phone) + return render(template, Dict( + "name" => name, + "role" => role, + "email" => email, + "phone" => phone, + )) end """ diff --git a/src/crisis.jl b/src/crisis.jl index c567775..7af9917 100644 --- a/src/crisis.jl +++ b/src/crisis.jl @@ -16,7 +16,7 @@ end function issue_holding_statement(playbook::CrisisPlaybook, variant_idx::Int) statement = playbook.holding_statements[variant_idx] - return "STMT: "$statement"" + return "STMT: \"$statement\"" end end # module diff --git a/test/e2e_test.jl b/test/e2e_test.jl index da4098a..8361dfc 100644 --- a/test/e2e_test.jl +++ b/test/e2e_test.jl @@ -18,7 +18,9 @@ using Dates @test variant isa AudienceVariant @test variant.pillar_id == :camp_p - pr = draft_release(:camp_pr, "Big Launch Today", "We launch our product.") + pr = draft_release(:camp_pr, "Big Launch Today", + "We launch our product today with full availability across all " * + "supported regions starting at 09:00 UTC.") review_release(pr) @test pr.status == :review diff --git a/test/property_test.jl b/test/property_test.jl index b6eb039..00aa2a1 100644 --- a/test/property_test.jl +++ b/test/property_test.jl @@ -47,7 +47,9 @@ using PRComms @testset "Invariant: draft_release always starts as draft" begin for _ in 1:50 id = Symbol("pr$(rand(1:99999))") - pr = draft_release(id, "Title $(rand(1:99999))", "Body text") + pr = draft_release(id, "Title $(rand(1:99999))", + "Property-based test body that exceeds the fifty-character " * + "minimum length required by draft_release().") @test pr.status == :draft @test pr.embargo_at === nothing end diff --git a/test/runtests.jl b/test/runtests.jl index 3d14fa7..41f4fb7 100644 --- a/test/runtests.jl +++ b/test/runtests.jl @@ -151,19 +151,22 @@ using DataFrames # Newsroom # ----------------------------------------------------------------------- @testset "Newsroom" begin + sample_body = "We are excited to announce our launch with " * + "comprehensive details for press and partners." + @testset "draft_release" begin - pr = draft_release(:nr1, "Launch Day", "We are excited to announce...") + pr = draft_release(:nr1, "Launch Day", sample_body) @test pr isa PressRelease @test pr.id == :nr1 @test pr.title == "Launch Day" - @test pr.body == "We are excited to announce..." + @test pr.body == sample_body @test pr.status == :draft @test pr.embargo_at === nothing @test pr.approved_at === nothing end @testset "review_release" begin - pr = draft_release(:nr2, "Review Test", "Body") + pr = draft_release(:nr2, "Review Test", sample_body) result = review_release(pr) @test result isa String @test pr.status == :review @@ -171,7 +174,7 @@ using DataFrames end @testset "publish_release without embargo" begin - pr = draft_release(:nr3, "Publish Test", "Body") + pr = draft_release(:nr3, "Publish Test", sample_body) result = publish_release(pr) @test result isa String @test pr.status == :published @@ -179,7 +182,7 @@ using DataFrames end @testset "publish_release with embargo" begin - pr = draft_release(:nr4, "Embargo Test", "Body") + pr = draft_release(:nr4, "Embargo Test", sample_body) embargo_time = DateTime(2026, 6, 1, 9, 0) result = publish_release(pr; embargo=embargo_time) @test result isa String @@ -278,7 +281,7 @@ using DataFrames end @testset "third_order_ratio" begin - @test third_order_ratio(0.8, 0.6, 2.0) == 0.1 + @test third_order_ratio(0.8, 0.6, 2.0) ≈ 0.1 @test third_order_ratio(0.5, 0.5, 0) == 0.0 # divide by zero guard end end