当前位置: 首页>>代码示例>>PHP>>正文


PHP RootURLController::reset方法代码示例

本文整理汇总了PHP中RootURLController::reset方法的典型用法代码示例。如果您正苦于以下问题:PHP RootURLController::reset方法的具体用法?PHP RootURLController::reset怎么用?PHP RootURLController::reset使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在RootURLController的用法示例。


在下文中一共展示了RootURLController::reset方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: testNestedPages

 /**
  * Test that nested pages, basic actions, and nested/non-nested URL switching works properly
  */
 public function testNestedPages()
 {
     RootURLController::reset();
     SiteTree::enable_nested_urls();
     $this->assertEquals('Home Page', $this->get('/')->getBody());
     $this->assertEquals('Home Page', $this->get('/home/index/')->getBody());
     $this->assertEquals('Home Page', $this->get('/home/second-index/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/home/second-level/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/home/second-level/index/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/home/second-level/second-index/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/home/second-level/third-level/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/home/second-level/third-level/index/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/home/second-level/third-level/second-index/')->getBody());
     RootURLController::reset();
     SiteTree::disable_nested_urls();
     $this->assertEquals('Home Page', $this->get('/')->getBody());
     $this->assertEquals('Home Page', $this->get('/home/')->getBody());
     $this->assertEquals('Home Page', $this->get('/home/second-index/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/second-level/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/second-level/index/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/second-level/second-index/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/third-level/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/third-level/index/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/third-level/second-index/')->getBody());
 }
开发者ID:SustainableCoastlines,项目名称:loveyourwater,代码行数:28,代码来源:ContentControllerTest.php

示例2: testNestedPages

 /**
  * Test that nested pages, basic actions, and nested/non-nested URL switching works properly
  */
 public function testNestedPages()
 {
     RootURLController::reset();
     Config::inst()->update('SiteTree', 'nested_urls', true);
     $this->assertEquals('Home Page', $this->get('/')->getBody());
     $this->assertEquals('Home Page', $this->get('/home/index/')->getBody());
     $this->assertEquals('Home Page', $this->get('/home/second-index/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/home/second-level/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/home/second-level/index/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/home/second-level/second-index/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/home/second-level/third-level/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/home/second-level/third-level/index/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/home/second-level/third-level/second-index/')->getBody());
     RootURLController::reset();
     SiteTree::config()->nested_urls = false;
     $this->assertEquals('Home Page', $this->get('/')->getBody());
     $this->assertEquals('Home Page', $this->get('/home/')->getBody());
     $this->assertEquals('Home Page', $this->get('/home/second-index/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/second-level/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/second-level/index/')->getBody());
     $this->assertEquals('Second Level Page', $this->get('/second-level/second-index/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/third-level/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/third-level/index/')->getBody());
     $this->assertEquals('Third Level Page', $this->get('/third-level/second-index/')->getBody());
 }
开发者ID:aaronleslie,项目名称:aaronunix,代码行数:28,代码来源:ContentControllerTest.php

示例3: testGetHomepageLink

 public function testGetHomepageLink()
 {
     $default = $this->objFromFixture('Page', 'home');
     $nested = $this->objFromFixture('Page', 'nested');
     SiteTree::disable_nested_urls();
     $this->assertEquals('home', RootURLController::get_homepage_link());
     SiteTree::enable_nested_urls();
     $this->assertEquals('home', RootURLController::get_homepage_link());
     $nested->HomepageForDomain = str_replace('www.', null, $_SERVER['HTTP_HOST']);
     $nested->write();
     RootURLController::reset();
     SiteTree::disable_nested_urls();
     $this->assertEquals('nested-home', RootURLController::get_homepage_link());
     RootURLController::reset();
     SiteTree::enable_nested_urls();
     $this->assertEquals('home/nested-home', RootURLController::get_homepage_link());
     $nested->HomepageForDomain = null;
     $nested->write();
 }
开发者ID:SustainableCoastlines,项目名称:loveyourwater,代码行数:19,代码来源:RootURLControllerTest.php

示例4: setUp

 function setUp()
 {
     // Mark test as being run
     $this->originalIsRunningTest = self::$is_running_test;
     self::$is_running_test = true;
     // i18n needs to be set to the defaults or tests fail
     i18n::set_locale(i18n::default_locale());
     i18n::set_date_format(null);
     i18n::set_time_format(null);
     // Remove password validation
     $this->originalMemberPasswordValidator = Member::password_validator();
     $this->originalRequirements = Requirements::backend();
     Member::set_password_validator(null);
     Cookie::set_report_errors(false);
     RootURLController::reset();
     Translatable::reset();
     Versioned::reset();
     DataObject::reset();
     SiteTree::reset();
     Hierarchy::reset();
     if (Controller::has_curr()) {
         Controller::curr()->setSession(new Session(array()));
     }
     $this->originalTheme = SSViewer::current_theme();
     // Save nested_urls state, so we can restore it later
     $this->originalNestedURLsState = SiteTree::nested_urls();
     $className = get_class($this);
     $fixtureFile = eval("return {$className}::\$fixture_file;");
     $prefix = defined('SS_DATABASE_PREFIX') ? SS_DATABASE_PREFIX : 'ss_';
     // Set up fixture
     if ($fixtureFile || $this->usesDatabase || !self::using_temp_db()) {
         if (substr(DB::getConn()->currentDatabase(), 0, strlen($prefix) + 5) != strtolower(sprintf('%stmpdb', $prefix))) {
             //echo "Re-creating temp database... ";
             self::create_temp_db();
             //echo "done.\n";
         }
         singleton('DataObject')->flushCache();
         self::empty_temp_db();
         foreach ($this->requireDefaultRecordsFrom as $className) {
             $instance = singleton($className);
             if (method_exists($instance, 'requireDefaultRecords')) {
                 $instance->requireDefaultRecords();
             }
             if (method_exists($instance, 'augmentDefaultRecords')) {
                 $instance->augmentDefaultRecords();
             }
         }
         if ($fixtureFile) {
             $fixtureFiles = is_array($fixtureFile) ? $fixtureFile : array($fixtureFile);
             $i = 0;
             foreach ($fixtureFiles as $fixtureFilePath) {
                 $fixture = new YamlFixture($fixtureFilePath);
                 $fixture->saveIntoDatabase();
                 $this->fixtures[] = $fixture;
                 // backwards compatibility: Load first fixture into $this->fixture
                 if ($i == 0) {
                     $this->fixture = $fixture;
                 }
                 $i++;
             }
         }
         $this->logInWithPermission("ADMIN");
     }
     // Set up email
     $this->originalMailer = Email::mailer();
     $this->mailer = new TestMailer();
     Email::set_mailer($this->mailer);
     Email::send_all_emails_to(null);
     // Preserve memory settings
     $this->originalMemoryLimit = ini_get('memory_limit');
 }
开发者ID:hamishcampbell,项目名称:silverstripe-sapphire,代码行数:71,代码来源:SapphireTest.php

示例5: setUp

 public function setUp()
 {
     // We cannot run the tests on this abstract class.
     if (get_class($this) == "SapphireTest") {
         $this->skipTest = true;
     }
     if ($this->skipTest) {
         $this->markTestSkipped(sprintf('Skipping %s ', get_class($this)));
         return;
     }
     // Mark test as being run
     $this->originalIsRunningTest = self::$is_running_test;
     self::$is_running_test = true;
     // i18n needs to be set to the defaults or tests fail
     i18n::set_locale(i18n::default_locale());
     i18n::config()->date_format = null;
     i18n::config()->time_format = null;
     // Set default timezone consistently to avoid NZ-specific dependencies
     date_default_timezone_set('UTC');
     // Remove password validation
     $this->originalMemberPasswordValidator = Member::password_validator();
     $this->originalRequirements = Requirements::backend();
     Member::set_password_validator(null);
     Config::inst()->update('Cookie', 'report_errors', false);
     if (class_exists('RootURLController')) {
         RootURLController::reset();
     }
     if (class_exists('Translatable')) {
         Translatable::reset();
     }
     Versioned::reset();
     DataObject::reset();
     if (class_exists('SiteTree')) {
         SiteTree::reset();
     }
     Hierarchy::reset();
     if (Controller::has_curr()) {
         Controller::curr()->setSession(Injector::inst()->create('Session', array()));
     }
     Security::$database_is_ready = null;
     // Add controller-name auto-routing
     Config::inst()->update('Director', 'rules', array('$Controller//$Action/$ID/$OtherID' => '*'));
     $fixtureFile = static::get_fixture_file();
     $prefix = defined('SS_DATABASE_PREFIX') ? SS_DATABASE_PREFIX : 'ss_';
     // Set up email
     $this->originalMailer = Email::mailer();
     $this->mailer = new TestMailer();
     Email::set_mailer($this->mailer);
     Config::inst()->remove('Email', 'send_all_emails_to');
     // Todo: this could be a special test model
     $this->model = DataModel::inst();
     // Set up fixture
     if ($fixtureFile || $this->usesDatabase || !self::using_temp_db()) {
         if (substr(DB::get_conn()->getSelectedDatabase(), 0, strlen($prefix) + 5) != strtolower(sprintf('%stmpdb', $prefix))) {
             //echo "Re-creating temp database... ";
             self::create_temp_db();
             //echo "done.\n";
         }
         singleton('DataObject')->flushCache();
         self::empty_temp_db();
         foreach ($this->requireDefaultRecordsFrom as $className) {
             $instance = singleton($className);
             if (method_exists($instance, 'requireDefaultRecords')) {
                 $instance->requireDefaultRecords();
             }
             if (method_exists($instance, 'augmentDefaultRecords')) {
                 $instance->augmentDefaultRecords();
             }
         }
         if ($fixtureFile) {
             $pathForClass = $this->getCurrentAbsolutePath();
             $fixtureFiles = is_array($fixtureFile) ? $fixtureFile : array($fixtureFile);
             $i = 0;
             foreach ($fixtureFiles as $fixtureFilePath) {
                 // Support fixture paths relative to the test class, rather than relative to webroot
                 // String checking is faster than file_exists() calls.
                 $isRelativeToFile = strpos('/', $fixtureFilePath) === false || preg_match('/^\\.\\./', $fixtureFilePath);
                 if ($isRelativeToFile) {
                     $resolvedPath = realpath($pathForClass . '/' . $fixtureFilePath);
                     if ($resolvedPath) {
                         $fixtureFilePath = $resolvedPath;
                     }
                 }
                 $fixture = Injector::inst()->create('YamlFixture', $fixtureFilePath);
                 $fixture->writeInto($this->getFixtureFactory());
                 $this->fixtures[] = $fixture;
                 // backwards compatibility: Load first fixture into $this->fixture
                 if ($i == 0) {
                     $this->fixture = $fixture;
                 }
                 $i++;
             }
         }
         $this->logInWithPermission("ADMIN");
     }
     // Preserve memory settings
     $this->originalMemoryLimit = ini_get('memory_limit');
     // turn off template debugging
     Config::inst()->update('SSViewer', 'source_file_comments', false);
     // Clear requirements
//.........这里部分代码省略.........
开发者ID:congaaids,项目名称:silverstripe-framework,代码行数:101,代码来源:SapphireTest.php

示例6: testChildOfDraft

 /**
  * go to a page that's been published but is child of an unpublished page
  *
  * NOTE: This test requires nested_urls
  */
 public function testChildOfDraft()
 {
     RootURLController::reset();
     Config::inst()->update('SiteTree', 'nested_urls', true);
     $draft = new Page();
     $draft->Title = 'Root Leve Draft Page';
     $draft->URLSegment = 'root';
     $draft->write();
     $published = new Page();
     $published->Title = 'Published Page Under Draft Page';
     $published->URLSegment = 'sub-root';
     $published->write();
     $published->publish('Stage', 'Live');
     $response = $this->get('root/sub-root');
     $this->assertEquals($response->getStatusCode(), 404, 'The page should not be found since its parent has not been published, in this case http://<yousitename>/root/sub-root or http://<yousitename>/sub-root');
 }
开发者ID:antons-,项目名称:silverstripe-cms,代码行数:21,代码来源:ModelAsControllerTest.php

示例7: setUp

 function setUp()
 {
     // We cannot run the tests on this abstract class.
     if (get_class($this) == "SapphireTest") {
         $this->skipTest = true;
     }
     if ($this->skipTest) {
         $this->markTestSkipped(sprintf('Skipping %s ', get_class($this)));
         return;
     }
     // Mark test as being run
     $this->originalIsRunningTest = self::$is_running_test;
     self::$is_running_test = true;
     // i18n needs to be set to the defaults or tests fail
     i18n::set_locale(i18n::default_locale());
     i18n::set_date_format(null);
     i18n::set_time_format(null);
     // Remove password validation
     $this->originalMemberPasswordValidator = Member::password_validator();
     $this->originalRequirements = Requirements::backend();
     Member::set_password_validator(null);
     Cookie::set_report_errors(false);
     if (class_exists('RootURLController')) {
         RootURLController::reset();
     }
     if (class_exists('Translatable')) {
         Translatable::reset();
     }
     Versioned::reset();
     DataObject::reset();
     if (class_exists('SiteTree')) {
         SiteTree::reset();
     }
     Hierarchy::reset();
     if (Controller::has_curr()) {
         Controller::curr()->setSession(new Session(array()));
     }
     $this->originalTheme = SSViewer::current_theme();
     if (class_exists('SiteTree')) {
         // Save nested_urls state, so we can restore it later
         $this->originalNestedURLsState = SiteTree::nested_urls();
     }
     $className = get_class($this);
     $fixtureFile = eval("return {$className}::\$fixture_file;");
     $prefix = defined('SS_DATABASE_PREFIX') ? SS_DATABASE_PREFIX : 'ss_';
     // Todo: this could be a special test model
     $this->model = DataModel::inst();
     // Set up fixture
     if ($fixtureFile || $this->usesDatabase || !self::using_temp_db()) {
         if (substr(DB::getConn()->currentDatabase(), 0, strlen($prefix) + 5) != strtolower(sprintf('%stmpdb', $prefix))) {
             //echo "Re-creating temp database... ";
             self::create_temp_db();
             //echo "done.\n";
         }
         singleton('DataObject')->flushCache();
         self::empty_temp_db();
         foreach ($this->requireDefaultRecordsFrom as $className) {
             $instance = singleton($className);
             if (method_exists($instance, 'requireDefaultRecords')) {
                 $instance->requireDefaultRecords();
             }
             if (method_exists($instance, 'augmentDefaultRecords')) {
                 $instance->augmentDefaultRecords();
             }
         }
         if ($fixtureFile) {
             $pathForClass = $this->getCurrentAbsolutePath();
             $fixtureFiles = is_array($fixtureFile) ? $fixtureFile : array($fixtureFile);
             $i = 0;
             foreach ($fixtureFiles as $fixtureFilePath) {
                 // Support fixture paths relative to the test class, rather than relative to webroot
                 // String checking is faster than file_exists() calls.
                 $isRelativeToFile = strpos('/', $fixtureFilePath) === false || preg_match('/^\\.\\./', $fixtureFilePath);
                 if ($isRelativeToFile) {
                     $resolvedPath = realpath($pathForClass . '/' . $fixtureFilePath);
                     if ($resolvedPath) {
                         $fixtureFilePath = $resolvedPath;
                     }
                 }
                 $fixture = new YamlFixture($fixtureFilePath);
                 $fixture->saveIntoDatabase($this->model);
                 $this->fixtures[] = $fixture;
                 // backwards compatibility: Load first fixture into $this->fixture
                 if ($i == 0) {
                     $this->fixture = $fixture;
                 }
                 $i++;
             }
         }
         $this->logInWithPermission("ADMIN");
     }
     // Set up email
     $this->originalMailer = Email::mailer();
     $this->mailer = new TestMailer();
     Email::set_mailer($this->mailer);
     Email::send_all_emails_to(null);
     // Preserve memory settings
     $this->originalMemoryLimit = ini_get('memory_limit');
 }
开发者ID:rixrix,项目名称:sapphire,代码行数:99,代码来源:SapphireTest.php


注:本文中的RootURLController::reset方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。