/** * Remove the specified resource from storage. * * @param NodeFieldRepository $nodeFieldRepository * @param int $id * @return \Illuminate\Http\Response */ public function destroy(NodeFieldRepository $nodeFieldRepository, $id) { $this->authorize('EDIT_NODEFIELDS'); $nodeFieldRepository->destroy($id); $this->notify('nodefields.destroyed'); return redirect()->back(); }
/** @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()); }