/**
  * Store a newly created resource in storage.
  *
  * @param int $id
  * @param NodeFieldRepository $nodeFieldRepository
  * @param  \Illuminate\Http\Request $request
  * @return \Illuminate\Http\Response
  */
 public function store($id, NodeFieldRepository $nodeFieldRepository, Request $request)
 {
     $this->authorize('EDIT_NODETYPES');
     $this->validateCreateForm($id, $request);
     $nodeField = $nodeFieldRepository->create($id, $request->all());
     $this->notify('nodefields.created');
     return redirect()->route('reactor.nodefields.edit', $nodeField->getKey());
 }
 /** @test */
 function it_destroys_a_node_field()
 {
     $nodeType = $this->getNodeType();
     $builderService = $this->prophesize('Nuclear\\Hierarchy\\Contract\\Builders\\BuilderServiceContract');
     // This part is for the sake of creating the test env
     $builderService->buildField('area', 'text', false, 'project', Argument::type('Nuclear\\Hierarchy\\Contract\\NodeTypeContract'))->shouldBeCalled();
     $builderService->destroyField('area', 'project', Argument::type('Nuclear\\Hierarchy\\Contract\\NodeTypeContract'))->shouldBeCalled();
     $repository = new NodeFieldRepository($builderService->reveal());
     $nodeField = $repository->create($nodeType->getKey(), ['name' => 'area', 'label' => 'Area', 'description' => '', 'type' => 'text', 'position' => 1.0, 'search_priority' => 0]);
     $repository->destroy($nodeField->getKey());
 }