예제 #1
0
 public function testInvalidJsonToArray()
 {
     $formData = new ApiFormTransfer();
     $formData->setSource('{"a"}');
     $jsonManager = new JsonDecoder();
     $this->assertNull($jsonManager->transform($formData)->getData());
 }
 /**
  * @param Request $request
  *
  * @return array
  */
 public function jsonAction(Request $request)
 {
     $formDefault = (new ApiFormTransfer())->setType(JsonForm::VALUE_PHP);
     $form = $this->createForm(JsonForm::class, $formDefault)->handleRequest($request);
     $result = new ResultTransfer();
     if ($form->isValid()) {
         $manager = new JsonDecoder();
         $manager->transform($form->getData());
         $response = FactoryTransformer::createResponse($form->getData(), $manager);
         $result->setResult($response);
     }
     return $this->render('::form.html.twig', ['form' => $form->createView(), 'result' => $result->getResult(), 'page_title' => 'Json']);
 }