diff --git a/lib/github_workflows_generator/yml_encoder.ex b/lib/github_workflows_generator/yml_encoder.ex index 7a19d93..df0b563 100644 --- a/lib/github_workflows_generator/yml_encoder.ex +++ b/lib/github_workflows_generator/yml_encoder.ex @@ -32,7 +32,7 @@ defmodule GithubWorkflowsGenerator.YmlEncoder do values = data |> String.split("\n", trim: true) - |> Enum.map_join("\n", &(String.duplicate(" ", level) <> value(&1))) + |> Enum.map_join("\n", &(String.duplicate(" ", level) <> &1)) "|\n#{values}" diff --git a/test/github_workflows_generator/yml_encoder_test.exs b/test/github_workflows_generator/yml_encoder_test.exs index 71f1db9..eea3fec 100644 --- a/test/github_workflows_generator/yml_encoder_test.exs +++ b/test/github_workflows_generator/yml_encoder_test.exs @@ -29,6 +29,14 @@ defmodule GithubWorkflowsGenerator.YmlEncoderTest do """ end + test "encodes a multiline string with colons correctly" do + assert YmlEncoder.encode(example: "this: is valid\nanother: line") == """ + example: | + this: is valid + another: line + """ + end + test "encodes a complex data structure" do assert YmlEncoder.encode( on: [