@@ -108,11 +108,60 @@ def test_get_github_token(mocker):
108108 assert ActionInputs .get_github_token () == "fake-token"
109109
110110
111- def test_get_tag_name (mocker ):
111+ def test_get_tag_name_version_full (mocker ):
112112 mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "v1.0.0" )
113113 assert ActionInputs .get_tag_name () == "v1.0.0"
114114
115115
116+ def test_get_tag_name_version_shorted_with_v (mocker ):
117+ mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "v1.2" )
118+ assert ActionInputs .get_tag_name () == "v1.2.0"
119+
120+
121+ def test_get_tag_name_version_shorted_no_v (mocker ):
122+ mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "1.2" )
123+ assert ActionInputs .get_tag_name () == "v1.2.0"
124+
125+
126+ def test_get_tag_name_empty (mocker ):
127+ mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "" )
128+ assert ActionInputs .get_tag_name () == ""
129+
130+
131+ def test_get_tag_name_invalid_format (mocker ):
132+ mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "v1.2.beta" )
133+ with pytest .raises (ValueError ) as excinfo :
134+ ActionInputs .get_tag_name ()
135+ assert "Invalid version tag format: 'v1.2.beta'. Expected vMAJOR.MINOR[.PATCH], e.g. 'v0.2' or 'v0.2.0'." in str (excinfo .value )
136+
137+
138+ def test_get_tag_from_name_version_full (mocker ):
139+ mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "v1.0.0" )
140+ assert ActionInputs .get_from_tag_name () == "v1.0.0"
141+
142+
143+ def test_get_from_tag_name_version_shorted_with_v (mocker ):
144+ mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "v1.2" )
145+ assert ActionInputs .get_from_tag_name () == "v1.2.0"
146+
147+
148+ def test_get_from_tag_name_version_shorted_no_v (mocker ):
149+ mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "1.2" )
150+ assert ActionInputs .get_from_tag_name () == "v1.2.0"
151+
152+
153+ def test_get_from_tag_name_empty (mocker ):
154+ mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "" )
155+ assert ActionInputs .get_from_tag_name () == ""
156+
157+
158+ def test_get_from_tag_name_invalid_format (mocker ):
159+ mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "v1.2.beta" )
160+ with pytest .raises (ValueError ) as excinfo :
161+ ActionInputs .get_from_tag_name ()
162+ assert "Invalid version tag format: 'v1.2.beta'. Expected vMAJOR.MINOR[.PATCH], e.g. 'v0.2' or 'v0.2.0'." in str (excinfo .value )
163+
164+
116165def test_get_chapters_success (mocker ):
117166 mocker .patch ("release_notes_generator.action_inputs.get_action_input" , return_value = "[{\" title\" : \" Title\" , \" label\" : \" Label\" }]" )
118167 assert ActionInputs .get_chapters () == [{"title" : "Title" , "label" : "Label" }]
0 commit comments