Example #1
0
 /** @test */
 function it_validates_parent_type()
 {
     $root = new Node();
     $root->setNodeTypeKey(2);
     $root->fill(['title' => 'Category', 'node_name' => 'category'])->save();
     $sub = new Node();
     $sub->setNodeTypeKey(2);
     $sub->fill(['title' => 'Sub Category', 'node_name' => 'sub-category']);
     $sub->appendToNode($root);
     $sub->save();
     $p1 = new Node();
     $p1->setNodeTypeKey(1);
     $p1->fill(['title' => 'Project 1', 'node_name' => 'project-1']);
     $p1->appendToNode($root);
     $p1->save();
     $p2 = new Node();
     $p2->setNodeTypeKey(1);
     $p2->fill(['title' => 'Project 2', 'node_name' => 'project-2']);
     $p2->appendToNode($p1);
     $p2->save();
     try {
         $sub->appendToNode($p1);
         $sub->save();
     } catch (\Nuclear\Hierarchy\Exception\InvalidParentNodeTypeException $e) {
         return;
     }
     $this->fail('Node parent failed, test fails.');
 }