Skip to content

Commit 18378c5

Browse files
committed
add test and changelog
1 parent fbac338 commit 18378c5

File tree

3 files changed

+14
-7
lines changed

3 files changed

+14
-7
lines changed

changelog/5361.bugfix.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Fixed bug where starting or ending a response with ``\n\n`` led to one of the responses returned being empty.

docs/conf.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,7 @@
139139
"fixed_sidebar": True,
140140
"product": "Rasa",
141141
"base_url": "https://rasa.com/docs/rasa/",
142-
"canonical_url": "https://rasa.com/docs/rasa/"
142+
"canonical_url": "https://rasa.com/docs/rasa/",
143143
}
144144
# html_theme_options = {}
145145

tests/core/test_channels.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ def fake_send_message(*args, **kwargs):
5757

5858
async def test_send_response(default_channel, default_tracker):
5959
text_only_message = {"text": "hey"}
60+
multiline_text_message = {"text": "This message should come first: \n\nThis is message two \nThis as well\n\n"}
6061
image_only_message = {"image": "https://i.imgur.com/nGF1K8f.jpg"}
6162
text_and_image_message = {
6263
"text": "look at this",
@@ -68,32 +69,37 @@ async def test_send_response(default_channel, default_tracker):
6869
}
6970

7071
await default_channel.send_response(default_tracker.sender_id, text_only_message)
72+
await default_channel.send_response(default_tracker.sender_id, multiline_text_message)
7173
await default_channel.send_response(default_tracker.sender_id, image_only_message)
7274
await default_channel.send_response(
7375
default_tracker.sender_id, text_and_image_message
7476
)
7577
await default_channel.send_response(default_tracker.sender_id, custom_json_message)
7678
collected = default_channel.messages
7779

78-
assert len(collected) == 6
80+
assert len(collected) == 8
7981

8082
# text only message
8183
assert collected[0] == {"recipient_id": "my-sender", "text": "hey"}
8284

85+
# multiline text message, should split on '\n\n'
86+
assert collected[1] == {"recipient_id": "my-sender", "text": "This message should come first: "}
87+
assert collected[2] == {"recipient_id": "my-sender", "text": "This is message two \nThis as well"}
88+
8389
# image only message
84-
assert collected[1] == {
90+
assert collected[3] == {
8591
"recipient_id": "my-sender",
8692
"image": "https://i.imgur.com/nGF1K8f.jpg",
8793
}
8894

8995
# text & image combined - will result in two messages
90-
assert collected[2] == {"recipient_id": "my-sender", "text": "look at this"}
91-
assert collected[3] == {
96+
assert collected[4] == {"recipient_id": "my-sender", "text": "look at this"}
97+
assert collected[5] == {
9298
"recipient_id": "my-sender",
9399
"image": "https://i.imgur.com/T5xVo.jpg",
94100
}
95-
assert collected[4] == {"recipient_id": "my-sender", "text": "look at this"}
96-
assert collected[5] == {
101+
assert collected[6] == {"recipient_id": "my-sender", "text": "look at this"}
102+
assert collected[7] == {
97103
"recipient_id": "my-sender",
98104
"custom": {"some_random_arg": "value", "another_arg": "value2"},
99105
}

0 commit comments

Comments
 (0)