[#5116] ticket:197 added summary, date, description to the feed
diff --git a/Allura/allura/model/artifact.py b/Allura/allura/model/artifact.py
index 752ecb4..3d71aaa 100644
--- a/Allura/allura/model/artifact.py
+++ b/Allura/allura/model/artifact.py
@@ -650,8 +650,8 @@
title=title,
description=description,
link=artifact.url(),
- author_name=author_name,
pubdate=pubdate,
+ author_name=author_name,
author_link=author_link or author.url())
return item
diff --git a/ForgeTracker/forgetracker/model/ticket.py b/ForgeTracker/forgetracker/model/ticket.py
index b65d0f8..ec3093c 100644
--- a/ForgeTracker/forgetracker/model/ticket.py
+++ b/ForgeTracker/forgetracker/model/ticket.py
@@ -443,7 +443,12 @@
n = Notification.post(artifact=self, topic='metadata', text=description, subject=subject)
if monitoring_email and n:
n.send_simple(monitoring_email)
- Feed.post(self, description)
+ Feed.post(
+ self,
+ title=self.summary,
+ description=description if description else self.description,
+ author=self.reported_by,
+ pubdate=self.created_date)
def url(self):
return self.app_config.url() + str(self.ticket_num) + '/'
diff --git a/ForgeTracker/forgetracker/tests/functional/test_root.py b/ForgeTracker/forgetracker/tests/functional/test_root.py
index 1ac0f7f..10a6479 100644
--- a/ForgeTracker/forgetracker/tests/functional/test_root.py
+++ b/ForgeTracker/forgetracker/tests/functional/test_root.py
@@ -672,6 +672,16 @@
response = self.app.get('/p/test/bugs/search_feed.atom?q=test')
assert '<title>test first ticket</title>' in response
+ def test_feed(self):
+ self.new_ticket(
+ summary='test first ticket',
+ description='test description')
+ ThreadLocalORMSession.flush_all()
+ M.MonQTask.run_ready()
+ ThreadLocalORMSession.flush_all()
+ response = self.app.get('/p/test/bugs/feed')
+ assert 'test first ticket' in response
+
def test_touch(self):
self.new_ticket(summary='test touch')
h.set_context('test', 'bugs', neighborhood='Projects')
diff --git a/ForgeTracker/forgetracker/tests/unit/test_ticket_model.py b/ForgeTracker/forgetracker/tests/unit/test_ticket_model.py
index 05b5657..a66ef9a 100644
--- a/ForgeTracker/forgetracker/tests/unit/test_ticket_model.py
+++ b/ForgeTracker/forgetracker/tests/unit/test_ticket_model.py
@@ -1,11 +1,13 @@
from pylons import c
+from datetime import datetime
from ming.orm.ormsession import ThreadLocalORMSession
from ming import schema
-from nose.tools import raises, assert_raises
+from nose.tools import raises, assert_raises, assert_equal
from forgetracker.model import Ticket
from forgetracker.tests.unit import TrackerTestWithModel
+from allura.model import Feed
class TestTicketModel(TrackerTestWithModel):
@@ -109,3 +111,20 @@
assert not has_access(t, 'update', user=creator)()
assert has_access(t, 'read', user=observer)()
assert has_access(t, 'read', user=anon)()
+
+ def test_feed(self):
+ t = Ticket(
+ app_config_id=c.app.config._id,
+ ticket_num=1,
+ summary='test ticket',
+ description='test description',
+ created_date=datetime(2012, 10, 29, 9, 57, 21, 465000))
+ assert_equal(t.created_date, datetime(2012, 10, 29, 9, 57, 21, 465000))
+ f = Feed.post(
+ t,
+ title=t.summary,
+ description=t.description,
+ pubdate=t.created_date)
+ assert_equal(f.pubdate, datetime(2012, 10, 29, 9, 57, 21, 465000))
+ assert_equal(f.title, 'test ticket')
+ assert_equal(f.description, 'test description')