static function getField($sql, $field) { Trace::addMessage(__CLASS__, sprintf('Getting field:"%s", with query:<br>%s', $field, $sql)); $result = parent::getField($sql, $field); Trace::addMessage(__CLASS__, sprintf('getField Finished')); return $result; }
/** * Тест установки sitemap-индекса к конфигу */ public function testSetupLink() { $schema = CConfig::getSchema('test'); $schema->setupSitemapLink(2); $this->assertEquals(2, $schema->getSitemapLink()); // Проверяет на уровне бд $sql = 'SELECT `sitemapId` FROM `custom_config_schema` WHERE `name`="%s" '; $sql = sprintf($sql, 'test'); $field = DB::getField($sql, 'sitemapId'); // $this->assertEquals('2', $field); }
public function testCreate() { $old = $this->getCounts(); // $schema = CConfig::createSchema('test2'); // Проверяем, что схема была создана и обозначена в таблице $schemaCount = DB::getField('select count(*) as `count` from ' . CCONFIG_SCHEMA_TABLE, 'count'); $this->assertEquals(2, $schemaCount); $schema->addControl('name', 'inputField', 'Имя'); $schema->addControl('name2', 'inputField', 'Имя2'); $schema->setTabSheets(array('Данные' => 'name')); // Проверяем кол-во записей в обоих таблицах $result = $this->getCounts(); $this->assertEquals($result, array('tabcount' => $old['tabcount'] + 1, 'controlcount' => $old['controlcount'] + 2)); }
protected function action() { set_time_limit(0); $sitemapIndex = new DOMDocument('1.0', 'utf-8'); $el = $sitemapIndex->createElement('sitemapindex'); $el->setAttribute('xmlns', "http://www.sitemaps.org/schemas/sitemap/0.9"); $sitemapIndex->appendChild($el); $sitemapUrlCount = DB::getField('select count(*) as `count` from `sitemap`', 'count'); $counter = 0; while ($counter < $sitemapUrlCount) { $sql = 'select * from `sitemap` where `document_name` <> "statistic_page" and `document_name` <> "externallink" order by `id` asc limit %d,%d'; $sql = sprintf($sql, $counter, self::SitemapLimit); $urlList = DB::query($sql); // Создаем первый документ $sitemap = $this->createSitemapDocument(); // Обрабатываем его $this->processUrls($sitemapIndex, $sitemap, $urlList); // СОхраняем результат $this->storeSitemap($sitemapIndex, $sitemap); $counter += self::SitemapLimit; } file_put_contents(FILE_PATH . 'sitemap.xml', $sitemapIndex->saveXML()); self::restart(); }
/** * */ public function testSetData() { $doc = new basicTestDocument(); $doc->get(1); $expectedData = array('id' => '2', 'name' => 'test name2', 'content' => 'test content2'); $doc->setData($expectedData); // ничего не произойдет $doc->update(); // $sql = 'select count(*) as `count` from `basic_document`'; $count = DB::getField($sql, 'count'); $this->assertEquals(1, $count); // Проверяем, что предыдущий update ни к чему не привел, т.к. мы заменили id документа $doc->get(1); $this->assertEquals('1', $doc->getId()); $this->assertEquals('test name', $doc->name->getValue()); // $doc->setData(array('content' => 'its works!')); $doc->update(); $doc = new basicTestDocument(); $doc->get(1); // $doc2 = new basicTestDocument(); $doc2->get(1); $this->assertEquals('its works!', $doc2->content->getValue()); }