From b76f53a5aec4775c599d96f97bbf8b97d651333e Mon Sep 17 00:00:00 2001
From: timoknapp <mail@timoknapp.com>
Date: Wed, 9 Dec 2020 08:29:10 +0100
Subject: [PATCH] test: add test for 'prettified_output' config

---
 examples/GENERATED_CHANGELOG copy.md      | 33 -----------------------
 pkg/generator/changelog_generator_test.go | 31 +++++++++++++++++++++
 2 files changed, 31 insertions(+), 33 deletions(-)
 delete mode 100644 examples/GENERATED_CHANGELOG copy.md

diff --git a/examples/GENERATED_CHANGELOG copy.md b/examples/GENERATED_CHANGELOG copy.md
deleted file mode 100644
index bef009b..0000000
--- a/examples/GENERATED_CHANGELOG copy.md	
+++ /dev/null
@@ -1,33 +0,0 @@
-## 2.0.0 (2020-11-11)
-
-#### Breaking Changes
-
-* commit message (12345678)
-```
-BREAKING CHANGE: test
-```
-* **user:** another commit message (12345679)
-```
-changed ID int into UUID
-```
-
-#### Feature
-
-* **app:** commit message (12345678)
-
-#### Bug Fixes
-
-* commit message (abcd)
-
-#### Build
-
-* commit message (43218765)
-
-#### CI
-
-* commit message (87654321)
-
-#### yolo
-
-* **swag:** commit message (12345678)
-
diff --git a/pkg/generator/changelog_generator_test.go b/pkg/generator/changelog_generator_test.go
index 81d0009..6f217f3 100644
--- a/pkg/generator/changelog_generator_test.go
+++ b/pkg/generator/changelog_generator_test.go
@@ -35,3 +35,34 @@ func TestDefaultGenerator(t *testing.T) {
 		t.Fail()
 	}
 }
+
+func TestPrettifiedGenerator(t *testing.T) {
+	changelogConfig := &generator.ChangelogGeneratorConfig{}
+	changelogConfig.Commits = []*semrel.Commit{
+		{},
+		{SHA: "123456789", Type: "feat", Scope: "app", Message: "commit message"},
+		{SHA: "abcd", Type: "fix", Scope: "", Message: "commit message"},
+		{SHA: "87654321", Type: "ci", Scope: "", Message: "commit message"},
+		{SHA: "43218765", Type: "build", Scope: "", Message: "commit message"},
+		{SHA: "12345678", Type: "yolo", Scope: "swag", Message: "commit message"},
+		{SHA: "12345678", Type: "chore", Scope: "", Message: "commit message", Raw: []string{"", "BREAKING CHANGE: test"}, Change: &semrel.Change{Major: true}},
+		{SHA: "12345679", Type: "chore!", Scope: "user", Message: "another commit message", Raw: []string{"another commit message", "changed ID int into UUID"}, Change: &semrel.Change{Major: true}},
+		{SHA: "stop", Type: "chore", Scope: "", Message: "not included"},
+	}
+	changelogConfig.LatestRelease = &semrel.Release{SHA: "stop"}
+	changelogConfig.NewVersion = "2.0.0"
+	generator := &DefaultChangelogGenerator{prettifiedOutput: true}
+	changelog := generator.Generate(changelogConfig)
+	if !strings.Contains(changelog, "* **app:** commit message (12345678)") ||
+		!strings.Contains(changelog, "* commit message (abcd)") ||
+		!strings.Contains(changelog, "#### 🎁 Feature") ||
+		!strings.Contains(changelog, "#### 🐞 Bug Fixes") ||
+		!strings.Contains(changelog, "#### 🔁 CI") ||
+		!strings.Contains(changelog, "#### 📦 Build") ||
+		!strings.Contains(changelog, "#### 📣 Breaking Changes") ||
+		!strings.Contains(changelog, "#### yolo") ||
+		!strings.Contains(changelog, "```\nBREAKING CHANGE: test\n```") ||
+		strings.Contains(changelog, "not included") {
+		t.Fail()
+	}
+}
-- 
GitLab