@@ -213,20 +213,22 @@ def test_autorelease_invalid(specfile, expected):
213213
214214
215215@pytest .mark .parametrize (
216- "changelog" ,
216+ "changelog, is_empty " ,
217217 [
218- "%changelog\n - log line" ,
219- "%ChAnGeLoG\n - log line " , # trailing whitespace here
220- "%changelog\n - log line\n \n \n " , # trailing newlines here
218+ ("%changelog\n - log line" , False ),
219+ ("%ChAnGeLoG\n - log line " , False ), # trailing whitespace here
220+ ("%changelog\n - log line\n \n \n " , False ), # trailing newlines here
221+ ("%changelog" , True ), # empty changelog, only a single newline character
221222 ],
222223 ids = [
223224 "regular" ,
224225 "case+whitespace" ,
225226 "regular+newlines" ,
227+ "empty" ,
226228 ],
227- indirect = True ,
229+ indirect = ( "changelog" ,) ,
228230)
229- def test_autochangelog (specfile ):
231+ def test_autochangelog (is_empty , specfile ):
230232 assert autochangelog_re .search (specfile .read_text ()) is None
231233
232234 converter = convert .PkgConverter (specfile )
@@ -237,7 +239,10 @@ def test_autochangelog(specfile):
237239 assert autochangelog_re .search (specfile .read_text ()) is not None
238240 changelog = specfile .parent / "changelog"
239241 assert changelog .exists ()
240- assert changelog .read_text () == "- log line\n "
242+ if is_empty :
243+ assert changelog .read_text () == "\n "
244+ else :
245+ assert changelog .read_text () == "- log line\n "
241246
242247
243248def test_autochangelog_already_converted (specfile , caplog ):
0 commit comments