github.com/BrandonManuel/git-chglog@v0.0.0-20200903004639-7a62fa08787a/processor_test.go (about) 1 package chglog 2 3 import ( 4 "testing" 5 6 "github.com/stretchr/testify/assert" 7 ) 8 9 func TestGitHubProcessor(t *testing.T) { 10 assert := assert.New(t) 11 12 config := &Config{ 13 Info: &Info{ 14 RepositoryURL: "https://example.com", 15 }, 16 } 17 18 processor := &GitHubProcessor{} 19 20 processor.Bootstrap(config) 21 22 assert.Equal( 23 &Commit{ 24 Header: "message [@foo](https://github.com/foo) [#123](https://example.com/issues/123)", 25 Subject: "message [@foo](https://github.com/foo) [#123](https://example.com/issues/123)", 26 Body: `issue [#456](https://example.com/issues/456) 27 multiline [#789](https://example.com/issues/789) 28 [@foo](https://github.com/foo), [@bar](https://github.com/bar)`, 29 Notes: []*Note{ 30 &Note{ 31 Body: `issue1 [#11](https://example.com/issues/11) 32 issue2 [#22](https://example.com/issues/22) 33 [gh-56](https://example.com/issues/56) hoge fuga`, 34 }, 35 }, 36 }, 37 processor.ProcessCommit( 38 &Commit{ 39 Header: "message @foo #123", 40 Subject: "message @foo #123", 41 Body: `issue #456 42 multiline #789 43 @foo, @bar`, 44 Notes: []*Note{ 45 &Note{ 46 Body: `issue1 #11 47 issue2 #22 48 gh-56 hoge fuga`, 49 }, 50 }, 51 }, 52 ), 53 ) 54 55 assert.Equal( 56 &Commit{ 57 Revert: &Revert{ 58 Header: "revert header [@mention](https://github.com/mention) [#123](https://example.com/issues/123)", 59 }, 60 }, 61 processor.ProcessCommit( 62 &Commit{ 63 Revert: &Revert{ 64 Header: "revert header @mention #123", 65 }, 66 }, 67 ), 68 ) 69 } 70 71 func TestGitLabProcessor(t *testing.T) { 72 assert := assert.New(t) 73 74 config := &Config{ 75 Info: &Info{ 76 RepositoryURL: "https://example.com", 77 }, 78 } 79 80 processor := &GitLabProcessor{} 81 82 processor.Bootstrap(config) 83 84 assert.Equal( 85 &Commit{ 86 Header: "message [@foo](https://gitlab.com/foo) [#123](https://example.com/issues/123)", 87 Subject: "message [@foo](https://gitlab.com/foo) [#123](https://example.com/issues/123)", 88 Body: `issue [#456](https://example.com/issues/456) 89 multiline [#789](https://example.com/issues/789) 90 [@foo](https://gitlab.com/foo), [@bar](https://gitlab.com/bar)`, 91 Notes: []*Note{ 92 &Note{ 93 Body: `issue1 [#11](https://example.com/issues/11) 94 issue2 [#22](https://example.com/issues/22) 95 gh-56 hoge fuga`, 96 }, 97 }, 98 }, 99 processor.ProcessCommit( 100 &Commit{ 101 Header: "message @foo #123", 102 Subject: "message @foo #123", 103 Body: `issue #456 104 multiline #789 105 @foo, @bar`, 106 Notes: []*Note{ 107 &Note{ 108 Body: `issue1 #11 109 issue2 #22 110 gh-56 hoge fuga`, 111 }, 112 }, 113 }, 114 ), 115 ) 116 117 assert.Equal( 118 &Commit{ 119 Revert: &Revert{ 120 Header: "revert header [@mention](https://gitlab.com/mention) [#123](https://example.com/issues/123)", 121 }, 122 }, 123 processor.ProcessCommit( 124 &Commit{ 125 Revert: &Revert{ 126 Header: "revert header @mention #123", 127 }, 128 }, 129 ), 130 ) 131 } 132 133 func TestBitbucketProcessor(t *testing.T) { 134 assert := assert.New(t) 135 136 config := &Config{ 137 Info: &Info{ 138 RepositoryURL: "https://example.com", 139 }, 140 } 141 142 processor := &BitbucketProcessor{} 143 144 processor.Bootstrap(config) 145 146 assert.Equal( 147 &Commit{ 148 Header: "message [@foo](https://bitbucket.org/foo/) [#123](https://example.com/issues/123/)", 149 Subject: "message [@foo](https://bitbucket.org/foo/) [#123](https://example.com/issues/123/)", 150 Body: `issue [#456](https://example.com/issues/456/) 151 multiline [#789](https://example.com/issues/789/) 152 [@foo](https://bitbucket.org/foo/), [@bar](https://bitbucket.org/bar/)`, 153 Notes: []*Note{ 154 &Note{ 155 Body: `issue1 [#11](https://example.com/issues/11/) 156 issue2 [#22](https://example.com/issues/22/) 157 gh-56 hoge fuga`, 158 }, 159 }, 160 }, 161 processor.ProcessCommit( 162 &Commit{ 163 Header: "message @foo #123", 164 Subject: "message @foo #123", 165 Body: `issue #456 166 multiline #789 167 @foo, @bar`, 168 Notes: []*Note{ 169 &Note{ 170 Body: `issue1 #11 171 issue2 #22 172 gh-56 hoge fuga`, 173 }, 174 }, 175 }, 176 ), 177 ) 178 179 assert.Equal( 180 &Commit{ 181 Revert: &Revert{ 182 Header: "revert header [@mention](https://bitbucket.org/mention/) [#123](https://example.com/issues/123/)", 183 }, 184 }, 185 processor.ProcessCommit( 186 &Commit{ 187 Revert: &Revert{ 188 Header: "revert header @mention #123", 189 }, 190 }, 191 ), 192 ) 193 }