Esempio n. 1
0
 /**
  * @test
  */
 public function getFindingChildrenIds()
 {
     $node = new Node();
     $node1_1 = new Node();
     $node1_2 = new Node();
     $node2_1 = new Node();
     $node1_2->setChildren($node2_1);
     $node->setChildren($node1_1);
     $node->setChildren($node1_2);
     $findingChildren = $node->getFindingChildrenIds();
     $this->assertCount(2, $findingChildren);
     $this->assertEmpty(array_diff([$node1_1->getId(), $node2_1->getId()], $findingChildren));
 }
 /**
  *
  * @param Request $request
  * @param Node $node
  *
  * @Route("/node/{id}",  requirements={"id": "[0-9*]+"}, name="node_statistic")
  * Cache(expires="+2 week")
  */
 public function nodeStatisticAction(Request $request, Node $node)
 {
     $node_id_arr = $node->getFindingChildrenIds();
     $entityManager = $this->getDoctrine()->getEntityManager();
     $statRepository = $entityManager->getRepository('TestBundle:Statistics');
     $result = $statRepository->countTestsInNode($node_id_arr);
     $user = $this->getUser();
     if ($user) {
         $user_result = $statRepository->countPassedTestsInNode($node_id_arr, $user->getId());
         $result = array_merge($result, $user_result);
     }
     return new JsonResponse($result);
 }