diff --git a/examples/GENERATED_CHANGELOG copy.md b/examples/GENERATED_CHANGELOG copy.md deleted file mode 100644 index bef009bf0403ca7a6cd5c63ca3b12c15908e872d..0000000000000000000000000000000000000000 --- 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 81d000940ef757bbcf35b6495d97076adb2c1d69..6f217f360199710d5ce68efb28302a4d32f8f711 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() + } +}