added it_get_all_pages, it_get_page, it_update_page test

This commit is contained in:
Peter Papp
2021-03-05 11:02:13 +01:00
parent 779b7fc8ba
commit e514994b08
7 changed files with 86 additions and 49 deletions
+12 -14
View File
@@ -6,8 +6,10 @@ use App\Http\Controllers\Controller;
use App\Http\Resources\PageCollection;
use App\Http\Resources\PageResource;
use App\Http\Tools\Demo;
use App\Page;
use App\Models\Page;
use Illuminate\Contracts\Routing\ResponseFactory;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
class PagesController extends Controller
{
@@ -19,20 +21,21 @@ class PagesController extends Controller
public function index()
{
return new PageCollection(
Page::sortable()->paginate(10)
Page::sortable()
->paginate(10)
);
}
/**
* Get page resource
*
* @param $slug
* @param $page
* @return PageResource
*/
public function show($slug)
public function show(Page $page)
{
return new PageResource(
Page::where('slug', $slug)->first()
$page
);
}
@@ -40,22 +43,17 @@ class PagesController extends Controller
* Update page content
*
* @param Request $request
* @param $slug
* @return \Illuminate\Contracts\Routing\ResponseFactory|\Illuminate\Http\Response
* @param Page $page
* @return ResponseFactory|Response
*/
public function update(Request $request, $slug)
public function update(Request $request, Page $page)
{
// Check if is demo
if (env('APP_DEMO')) {
return Demo::response_204();
}
// Get page
$page = Page::where('slug', $slug)->first();
// Update page
$page->update(make_single_input($request));
return response('Done', 204);
return response(new PageResource($page), 204);
}
}
@@ -11,6 +11,7 @@ use App\Http\Requests\SetupWizard\StoreStripeBillingRequest;
use App\Http\Requests\SetupWizard\StoreStripeCredentialsRequest;
use App\Http\Requests\SetupWizard\StoreStripePlansRequest;
use App\Page;
use App\Services\SetupService;
use App\Services\StripeService;
use App\Setting;
use App\User;
@@ -34,9 +35,10 @@ class SetupWizardController extends Controller
/**
* Inject Stripe Service
*/
public function __construct(StripeService $stripe)
public function __construct()
{
$this->stripe = $stripe;
$this->stripe = resolve(StripeService::class);
$this->setup = resolve(SetupService::class);
}
/**
@@ -466,17 +468,12 @@ class SetupWizardController extends Controller
]);
// Create legal pages and index content
$pages = collect(config('content.pages'));
$content = $request->license === 'Extended' ? collect(config('content.content_extended')) : collect(config('content.content_regular'));
$content->each(function ($content) {
Setting::updateOrCreate($content);
});
$pages->each(function ($page) {
Page::updateOrCreate($page);
});
// Retrieve access token
$response = Route::dispatch(self::make_login_request($request));
@@ -506,31 +503,7 @@ class SetupWizardController extends Controller
'--force' => true
]);
// Create Passport Keys
Artisan::call('passport:keys', [
'--force' => true
]);
// Create Password grant client
Artisan::call('passport:client', [
'--password' => true,
'--name' => 'vuefilemanager',
]);
// Create Personal access client
Artisan::call('passport:client', [
'--personal' => true,
'--name' => 'shared',
]);
// Get generated client
$client = \DB::table('oauth_clients')->where('name', '=', 'vuefilemanager')->first();
// Set passport client to .env
setEnvironmentValue([
'PASSPORT_CLIENT_ID' => $client->id,
'PASSPORT_CLIENT_SECRET' => $client->secret,
]);
$this->setup->seed_pages();
}
/**