| Current File : //opt/RZphp5/includes/test/DB_NestedSet/tests/NestedSet/api.php |
<?php
class tests_NestedSet_api extends DB_NestedSetTest {
function test_sortMethods() {
// Rootnodes
echo "<code>";
$values['STRNA'] = 'Skireisen';
$skireisen = $this->_NeSe->createRootNode($values, false, true);
$values['STRNA'] = 'Schweiz';
$schweiz = $this->_NeSe->createSubNode($skireisen, $values);
$values['STRNA'] = 'Grindelwald';
$grindelwald = $this->_NeSe->createSubNode($schweiz, $values);
$values['STRNA'] = '�sterreich';
$oesterreich = $this->_NeSe->createSubNode($skireisen, $values);
$values['STRNA'] = 'Arlberg';
$arlberg = $this->_NeSe->createSubNode($oesterreich, $values);
$values['STRNA'] = 'Saalbach';
$saalbach = $this->_NeSe->createSubNode($oesterreich, $values);
$values['STRNA'] = 'Obertauern';
$obertauern = $this->_NeSe->createSubNode($oesterreich, $values);
$values['STRNA'] = 'Italien';
$italien = $this->_NeSe->createSubNode($skireisen, $values);
$values['STRNA'] = 'Meransen';
$meransen = $this->_NeSe->createSubNode($italien, $values);
echo "DEFAULT\n";
$this->_NeSe->setSortMode(NESE_SORT_LEVEL);
$allnodes_default = $this->_NeSe->getAllNodes(true);
$this->_indentTree($allnodes_default);
echo "BY NAME\n";
$this->_NeSe->setSortMode(NESE_SORT_LEVEL);
$this->_NeSe->secondarySort = 'STRNA';
$allnodes_byname = $this->_NeSe->getAllNodes(true);
$this->_indentTree($allnodes_byname);
echo "PREORDER\n";
$this->_NeSe->setSortMode(NESE_SORT_PREORDER);
$this->_NeSe->secondarySort = 'STREH';
$allnodes_preorder = $this->_NeSe->getAllNodes(true);
$this->_indentTree($allnodes_preorder);
echo "BY NAME PREORDER\n";
$this->_NeSe->setSortMode(NESE_SORT_PREORDER);
$this->_NeSe->secondarySort = 'STRNA';
$allnodes_byname_pre = $this->_NeSe->getAllNodes(true);
$this->_indentTree($allnodes_byname_pre);
echo "BY NAME PREORDER getSubBranch\n";
$this->_NeSe->setSortMode(NESE_SORT_PREORDER);
$this->_NeSe->secondarySort = 'STRNA';
$allnodes_preorder = $this->_NeSe->getSubBranch($oesterreich, true);
$this->_indentTree($allnodes_preorder);
echo "BY NAME PREORDER getSubBranch empty subbranch\n";
$this->_NeSe->setSortMode(NESE_SORT_PREORDER);
$this->_NeSe->secondarySort = 'STRNA';
$allnodes_preorder = $this->_NeSe->getSubBranch($grindelwald, true);
$this->_indentTree($allnodes_preorder);
echo "TRYING getBranch()\n";
$atbranch = $this->_NeSe->getBranch($oesterreich, true);
$this->_indentTree($atbranch);
echo "TRYING getChildren()\n";
$atbranch = $this->_NeSe->getChildren($oesterreich, true);
$this->_indentTree($atbranch);
echo "TRYING getSubBranch()\n";
$atbranch = $this->_NeSe->getSubBranch($skireisen, true);
$this->_indentTree($atbranch);
echo "</code>";
}
function test_convertModel() {
$rnc = 3;
$depth = 1;
$npl = 2;
$this->_createSubNode($rnc, $depth, $npl);
DB_NestedSet::convertTreeModel($this->_NeSe, $this->_NeSe2);
$this->_NeSe->setSortMode(NESE_SORT_LEVEL);
$this->_NeSe2->setSortMode(NESE_SORT_LEVEL);
$this->assertEquals($this->_NeSe->getAllNodes(true), $this->_NeSe2->getAllNodes(true), 'Converted tree should match original');
}
}
?>