@@ -106,7 +106,6 @@ def test_pass():
106106 assert color == '#56a64f'
107107 assert emoji == slack_hook_icon_emoji
108108
109-
110109@pytest .mark .parametrize ('expected_prefix,report_link' , [
111110 ("Test Prefix" , None ),
112111 ("Test Prefix" , "http://report_link.com" )
@@ -145,6 +144,43 @@ def test_pass():
145144
146145 assert text == expected_text
147146
147+ @pytest .mark .parametrize ('expected_test_name,report_link' , [
148+ ("test_name" , None ),
149+ ("test_name" , "http://report_link.com" )
150+ ])
151+ def test_pytest_messenger_slack_message_test_name (testdir , expected_test_name , report_link ):
152+ """Make sure that message test_name works."""
153+
154+ testdir .makepyfile (
155+ """
156+ import pytest
157+ def test_pass():
158+ assert 1 == 1
159+ """
160+ )
161+
162+ slack_hook_host = 'http://test.com/any_hash'
163+ slack_hook_channel = 'test'
164+ run_args = [
165+ '--slack_channel' , slack_hook_channel ,
166+ '--slack_hook' , slack_hook_host ,
167+ '--slack_test_name' , expected_test_name
168+ ]
169+ if report_link :
170+ run_args .extend (['--slack_report_link' , report_link ])
171+
172+ expected_text = 'Test=test_name Passed=1 Failed=0 Skipped=0 Error=0 XFailed=0 XPassed=0'
173+ if report_link :
174+ expected_text = '<%s|%s>' % (report_link , expected_text )
175+
176+ with mock .patch ('requests.post' ) as mock_post :
177+ testdir .runpytest (* run_args )
178+
179+ called_data = json .loads (mock_post .call_args [1 ]['data' ])
180+ text = called_data ['attachments' ][0 ]['text' ]
181+
182+ assert text == expected_text
183+
148184
149185@pytest .mark .parametrize ('test_input,expected_emoji' , [
150186 ('1 == 1' , ':sunny:' ),
0 commit comments