Code Coverage
 
Classes and Traits
Functions and Methods
Lines
Total
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
7 / 7
CRAP
100.00% covered (success)
100.00%
19 / 19
SitesController
100.00% covered (success)
100.00%
1 / 1
100.00% covered (success)
100.00%
7 / 7
7
100.00% covered (success)
100.00%
19 / 19
 __construct
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
2 / 2
 validator
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
3 / 3
 index
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
1 / 1
 store
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
5 / 5
 show
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
1 / 1
 update
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
5 / 5
 destroy
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
2 / 2
1<?php
2
3namespace Qmp\Laravel\ExternalUsers\Controllers;
4
5use Illuminate\Http\Exceptions\HttpResponseException;
6use Illuminate\Http\Response;
7use Illuminate\Http\Request;
8use Qmp\Laravel\ExternalUsers\Models\Site;
9use Qmp\Laravel\MicroService\Controllers\AbstractMicroServiceController;
10
11class SitesController extends AbstractMicroServiceController
12{
13    public function __construct(Request $request)
14    {
15        parent::__construct($request);
16    }
17
18    protected function validator(Request $request)
19    {
20        $request->validate([
21            'name' => 'required|string',
22            'url' => 'required|string'
23        ]);
24    }
25
26    public function index(Request $request)
27    {
28        return response()->json(Site::all());
29    }
30
31    public function store(Request $request)
32    {
33        $this->validator($request);
34
35        $site = Site::create([
36            'name' => $request->name,
37            'url' => $request->url
38        ]);
39
40        return response()->json(['status' => 'ok', 'site' => $site], 201);
41    }
42
43    public function show(Request $request, Site $site)
44    {
45        return response()->json($site);
46    }
47
48    public function update(Request $request, Site $site)
49    {
50        $this->validator($request);
51
52        $site->name = $request->name;
53        $site->url = $request->url;
54        $site->save();
55
56        return response()->json(['status' => 'ok']);
57    }
58
59    public function destroy(Request $request, Site $site)
60    {
61        $site->delete();
62
63        return response()->json(['status' => 'ok']);
64    }
65}