2015-01-03 15:18:21 +02:00
|
|
|
<?php
|
|
|
|
/**
|
2015-01-05 10:03:13 +02:00
|
|
|
* @link https://github.com/creocoder/yii2-nested-sets
|
2015-01-03 15:18:21 +02:00
|
|
|
* @copyright Copyright (c) 2015 Alexander Kochetov
|
|
|
|
* @license http://opensource.org/licenses/BSD-3-Clause
|
|
|
|
*/
|
|
|
|
|
|
|
|
namespace tests;
|
|
|
|
|
2015-01-03 19:09:41 +02:00
|
|
|
use tests\models\MultipleRootsTree;
|
|
|
|
use tests\models\Tree;
|
|
|
|
use yii\helpers\ArrayHelper;
|
|
|
|
|
2015-01-03 15:18:21 +02:00
|
|
|
/**
|
|
|
|
* NestedSetsQueryBehaviorTest
|
|
|
|
*/
|
|
|
|
class NestedSetsQueryBehaviorTest extends DatabaseTestCase
|
|
|
|
{
|
|
|
|
public function testRoots()
|
|
|
|
{
|
2015-01-04 13:26:18 +02:00
|
|
|
$dataSet = new ArrayDataSet([
|
|
|
|
'tree' => ArrayHelper::toArray(Tree::find()->roots()->all()),
|
|
|
|
'multiple_roots_tree' => ArrayHelper::toArray(MultipleRootsTree::find()->roots()->all()),
|
|
|
|
]);
|
2015-01-03 19:09:41 +02:00
|
|
|
|
2015-01-04 13:26:18 +02:00
|
|
|
$expectedDataSet = $this->createFlatXMLDataSet(__DIR__ . '/data/test-roots-query.xml');
|
2015-01-03 19:09:41 +02:00
|
|
|
$this->assertDataSetsEqual($expectedDataSet, $dataSet);
|
2015-01-03 15:18:21 +02:00
|
|
|
}
|
|
|
|
|
2015-01-03 20:16:50 +02:00
|
|
|
public function testLeaves()
|
2015-01-03 15:18:21 +02:00
|
|
|
{
|
2015-01-04 13:26:18 +02:00
|
|
|
$dataSet = new ArrayDataSet([
|
|
|
|
'tree' => ArrayHelper::toArray(Tree::find()->leaves()->all()),
|
|
|
|
'multiple_roots_tree' => ArrayHelper::toArray(MultipleRootsTree::find()->leaves()->all()),
|
|
|
|
]);
|
2015-01-03 19:09:41 +02:00
|
|
|
|
2015-01-04 13:26:18 +02:00
|
|
|
$expectedDataSet = $this->createFlatXMLDataSet(__DIR__ . '/data/test-leaves-query.xml');
|
2015-01-03 19:09:41 +02:00
|
|
|
$this->assertDataSetsEqual($expectedDataSet, $dataSet);
|
2015-01-03 15:18:21 +02:00
|
|
|
}
|
|
|
|
}
|