[#7492] corrected activity description not to display 'on' in case there is no activity name
diff --git a/ForgeActivity/forgeactivity/main.py b/ForgeActivity/forgeactivity/main.py
index 37c7ff5..e0b22c8 100644
--- a/ForgeActivity/forgeactivity/main.py
+++ b/ForgeActivity/forgeactivity/main.py
@@ -164,7 +164,7 @@
t.actor.activity_name,
t.verb,
t.obj.activity_name,
- ' on %s' % (t.target.activity_name or ''),
+ ' on %s' % t.target.activity_name if t.target.activity_name else '',
),
link=url,
pubdate=t.published,
diff --git a/ForgeActivity/forgeactivity/tests/functional/test_root.py b/ForgeActivity/forgeactivity/tests/functional/test_root.py
index a2b3d55..240ed7d 100644
--- a/ForgeActivity/forgeactivity/tests/functional/test_root.py
+++ b/ForgeActivity/forgeactivity/tests/functional/test_root.py
@@ -226,6 +226,30 @@
assert_equal(activity.find('link').text,
'http://localhost/p/test/tickets/34/?limit=25#ed7c')
+ @td.with_tool('test', 'activity')
+ @patch('forgeactivity.main.g.director')
+ def test_feed_rss_project_verb_without_activity_name(self, director):
+ from activitystream.storage.base import StoredActivity
+ director.get_timeline.return_value = [StoredActivity(**{
+ "obj": {
+ "activity_extras": {},
+ "activity_url": "/p/test/tickets/34/?limit=25#ed7c",
+ "activity_name": "ticket #34"
+ },
+ "target": {},
+ "actor": {
+ "activity_name": "Administrator 1",
+ },
+ "verb": "created"
+ })]
+
+ r = self.app.get('/p/test/activity/feed.rss')
+ timeline = r.xml.find('channel')
+ assert_equal(1, len(timeline.findall('item')))
+ activity = timeline.find('item')
+
+ assert_equal(activity.find('title').text, 'Administrator 1 created ticket #34')
+
@td.with_tool('u/test-user-1', 'activity')
@td.with_user_project('test-user-1')
@patch('forgeactivity.main.g.director')