/** * test configuration */ public function testConfiguration() { $this->assertEquals($this->db, $this->model->getAdapter()); $this->assertEquals(array(1 => 'id'), $this->model->info('primary')); $this->assertEquals(Zend_Registry::get('config')->resources->db->prefix . 'feeds', $this->model->info('name')); $this->assertEquals(Zend_Registry::get('config')->resources->db->params->dbname, $this->model->info('schema')); $referenceMap = $this->model->info('referenceMap'); $expected = array('columns' => 'category', 'refTableClass' => 'application_models_categories', 'refColumn' => 'id'); $this->assertEquals($expected, $referenceMap['categories']); }
/** * insert given feeds * * @return void * @param int $category id * @param array $feeds as array */ protected function insertFeeds($category, $feeds) { $feedsModel = new application_models_feeds(); // insert unkown feeds foreach ($feeds as $feed) { // search existing feed $moreFeeds = $feedsModel->fetchAll($feedsModel->select()->where($feedsModel->getAdapter()->quoteInto('url=?', trim($feed['link'])))); // if feed doesn't exists if ($moreFeeds->count() == 0) { $feedsModel->add(array('name' => trim($feed['title']), 'url' => trim($feed['link']), 'category' => $category, 'priority' => 1, 'source' => 'plugins_rss_feed')); } } // fix positions $categoriesModel = new application_models_categories(); $categoriesModel->fixPositions($categoriesModel->find($category)->current()); }