public function initialize($feed_array)
 {
     parent::initialize($feed_array);
     $this->setSiteUrl(isset($feed_array['siteUrl']) ? $feed_array['siteUrl'] : '');
     $this->setCopyright(isset($feed_array['copyright']) ? $feed_array['copyright'] : '');
     $this->setAtomLink(isset($feed_array['atom_link']) ? $feed_array['atom_link'] : '');
     $this->setLastBuildDate(isset($feed_array['lastBuildDate']) ? $feed_array['lastBuildDate'] : '');
     $this->setTTL(isset($feed_array['ttl']) ? $feed_array['ttl'] : '');
     $this->setImage(isset($feed_array['image']) ? $feed_array['image'] : '');
     $this->setSyUpdatePeriod(isset($feed_array['sy_updatePeriod']) ? $feed_array['sy_updatePeriod'] : '');
     $this->setSyUpdateFrequency(isset($feed_array['sy_updateFrequency']) ? $feed_array['sy_updateFrequency'] : '');
     $this->setSyUpdateBase(isset($feed_array['sy_updateBase']) ? $feed_array['sy_updateBase'] : '');
 }
$t->is($generatedItem->getDescription(), $feedItem->getDescription(), 'The description property is properly set');
$t->is($generatedItem->getContent(), $feedItem->getContent(), 'The content property is properly set');
$t->is($generatedItem->getAuthorEmail(), $feedItem->getAuthorEmail(), 'The author email property is properly set');
$t->is($generatedItem->getAuthorName(), $feedItem->getAuthorName(), 'The author name property is properly set');
$t->isnt($generatedItem->getAuthorLink(), $feedItem->getAuthorLink(), 'The author link property cannot be set from a RSS feed');
$t->is($generatedItem->getPubDate(), $feedItem->getPubdate(), 'The publication date property is properly set');
$t->is($generatedItem->getComments(), $feedItem->getComments(), 'The comments property is properly set');
$t->is($generatedItem->getUniqueId(), $feedItem->getUniqueId(), 'The unique id property is properly set');
$t->is($generatedItem->getEnclosure()->__toString(), $feedItem->getEnclosure()->__toString(), 'The enclosure property is properly set');
$t->is($generatedItem->getCategories(), $feedItem->getCategories(), 'The categories property is properly set');
$generatedItem = $items[1];
$t->is($generatedItem->getAuthorEmail(), $feedItem2->getAuthorEmail(), 'The author email property is properly set, even if there is no email address');
$t->diag('RSS 0.91');
$feed = new sfRssFeed();
$feed->setVersion('0.91');
$feed->initialize($feedParams);
$feedItem = new sfFeedItem();
$feedItem->initialize($itemParams);
$feed->addItem($feedItem);
$feedItem2 = new sfFeedItem();
$feedItem2->initialize($item2Params);
$feed->addItem($feedItem2);
$feedString = $feed->asXml();
$generatedFeed = new sfRssFeed();
$generatedFeed->fromXml($feedString);
$t->isnt($generatedFeed->getCategories(), $feed->getCategories(), '<category> doesn\'t exist in a RSS0.91 feed');
$items = $generatedFeed->getItems();
$generatedItem = $items[0];
$t->isnt($generatedItem->getAuthorEmail(), $feedItem->getAuthorEmail(), '<item><author> doesn\'t exist in a RSS0.91 feed');
$t->isnt($generatedItem->getAuthorName(), $feedItem->getAuthorName(), '<item><author> doesn\'t exist in a RSS0.91 feed');
$t->isnt($generatedItem->getPubDate(), $feedItem->getPubdate(), '<item><pubDate> doesn\'t exist in a RSS0.91 feed');
 public function getDefaultFeed($max = 25)
 {
     $feed = new sfRssFeed();
     $feed->initialize(array('title' => 'Cothink Feed for ' . $this->getFullName(), 'link' => 'http://www.cothink.org/', 'authorEmail' => $this->getPrimaryContactInfo()->getEmail(), 'authorName' => $this->getFullName()));
     $events = HistoryEventPeer::retrieveByUser($this->getUserId(), $max);
     // TODO: Allow user to configure max
     $eventItems = sfFeedPeer::convertObjectsToItems($events, array('routeName' => '@permalink'));
     $feed->addItems($eventItems);
     return $feed;
 }