public function testFactory() { $this->tree->createNode(\mrikirill\Composite\NodeFactory::create('domen', 'product2')); $this->assertInstanceOf('\\mrikirill\\Composite\\NodeProduct2', $this->tree->nodes['domen']); }
use mrikirill\Composite\TreeComposite, mrikirill\Composite\Node, mrikirill\Composite\NodeFactory; $tree = new TreeComposite(); $tree->createNode(new Node('country')); $tree->createNode(new Node('kiev'), $tree->getNode('country')); $tree->createNode(new Node('kremlin'), $tree->getNode('kiev')); $tree->createNode(new Node('house'), $tree->getNode('kremlin')); $tree->createNode(new Node('tower'), $tree->getNode('kremlin')); $tree->createNode(new Node('moskow'), $tree->getNode('country')); $tree->attachNode($tree->getNode('kremlin'), $tree->getNode('moskow')); $tree->createNode(new Node('maidan'), $tree->getNode('kiev')); $tree->deleteNode($tree->getNode('kiev')); $out = $tree->export(); $tree->createNode(NodeFactory::create('domen', 'product1')); $tree->createNode(NodeFactory::create('RU', 'product2'), $tree->getNode('domen')); $tree->createNode(NodeFactory::create('EU', 'product2'), $tree->getNode('domen')); $tree->createNode(NodeFactory::create('RU', 'product2'), $tree->getNode('domen')); ?> <!DOCTYPE html> <html> <head> <title>Senior task</title> <base href="http://172.245.77.148/senior-task/"> <link rel="stylesheet" href="//netdna.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css"> <link rel="stylesheet" href="style.css"> <script src="//code.jquery.com/jquery-1.11.3.min.js"></script> <script src="//netdna.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script> <script src="script.js"></script> </head> <body> <div class="container">