Seditio Source
Root |
./othercms/croogo-4.0.7/vendor/croogo/croogo/Nodes/tests/TestCase/Controller/NodesControllerTest.php
<?php
namespace Croogo\Nodes\Test\TestCase\Controller;

use
Cake\Core\Configure;
use
Cake\ORM\TableRegistry;
use
Croogo\Core\Event\EventManager;
use
Croogo\Core\PluginManager;
use
Croogo\Core\TestSuite\IntegrationTestCase;

/**
 * @property \Croogo\Nodes\Model\Table\NodesTable Nodes
 */
class NodesControllerTest extends IntegrationTestCase
{
    public
$fixtures = [
       
'plugin.Croogo/Users.Role',
       
'plugin.Croogo/Users.User',
       
'plugin.Croogo/Users.Aco',
       
'plugin.Croogo/Users.Aro',
       
'plugin.Croogo/Users.ArosAco',
       
'plugin.Croogo/Blocks.Block',
       
'plugin.Croogo/Comments.Comment',
       
'plugin.Croogo/Contacts.Contact',
       
'plugin.Croogo/Translate.I18n',
       
'plugin.Croogo/Settings.Language',
       
'plugin.Croogo/Menus.Link',
       
'plugin.Croogo/Menus.Menu',
       
'plugin.Croogo/Contacts.Message',
       
'plugin.Croogo/Meta.Meta',
       
'plugin.Croogo/Nodes.Node',
       
'plugin.Croogo/Taxonomy.ModelTaxonomy',
       
'plugin.Croogo/Blocks.Region',
       
'plugin.Croogo/Core.Settings',
       
'plugin.Croogo/Taxonomy.Taxonomy',
       
'plugin.Croogo/Taxonomy.Term',
       
'plugin.Croogo/Taxonomy.Type',
       
'plugin.Croogo/Taxonomy.TypesVocabulary',
       
'plugin.Croogo/Taxonomy.Vocabulary',
    ];

    public function
setUp()
    {
       
parent::setUp();

       
EventManager::loadListeners();

       
$this->Nodes = TableRegistry::get('Croogo/Nodes.Nodes');
    }

    public function
testPromotedWithVisibilityRole()
    {
       
$this->user('admin');

       
$this->get('/promoted');

       
$this->assertEquals(2, $this->viewVariable('nodes')->count());
    }

    public function
testIndexWithVisibilityRole()
    {
       
$this->user('admin');

       
$this->get('/node?type=page');

       
$this->assertEquals(2, $this->viewVariable('nodes')->count());
    }

    public function
testViewFallback()
    {
       
PluginManager::load('Mytheme');
       
Configure::write('Site.theme', 'Mytheme');

       
$this->get('/node');

       
$this->_controller->Croogo->viewFallback(['index_blog']);
       
$this->assertContains('index_blog', $this->_controller->viewBuilder()->template());
       
$this->assertContains('Mytheme', $this->_controller->viewBuilder()->template());

       
$this->get('/blog/hello-world');

       
$this->_controller->Croogo->viewFallback(['view_1', 'view_blog']);
       
$this->assertContains('view_1.ctp', $this->_controller->viewBuilder()->template());
       
$this->assertContains('Mytheme', $this->_controller->viewBuilder()->template());
    }

   
/**
     * testViewFallback for core NodesController with default theme
     *
     * @return void
     */
   
public function testViewFallbackWithDefaultTheme()
    {
       
$this->get('/');

       
$this->_controller->Croogo->viewFallback('index_node');
       
$this->assertContains('index_node.ctp', $this->_controller->viewBuilder()->template());
    }
}