start Events test
This commit is contained in:
@@ -3,7 +3,6 @@
|
|||||||
namespace App\Http\Controllers;
|
namespace App\Http\Controllers;
|
||||||
|
|
||||||
use App\Http\Requests\EventCategoryRequest;
|
use App\Http\Requests\EventCategoryRequest;
|
||||||
use App\Http\Resources\CustomerCatchmentArea;
|
|
||||||
use App\Http\Resources\EventCategory as EventCategoryResource;
|
use App\Http\Resources\EventCategory as EventCategoryResource;
|
||||||
use App\Models\EventCategory;
|
use App\Models\EventCategory;
|
||||||
use Illuminate\Http\Request;
|
use Illuminate\Http\Request;
|
||||||
@@ -76,7 +75,7 @@ class EventCategoryController extends Controller
|
|||||||
*/
|
*/
|
||||||
public function destroy(EventCategory $category)
|
public function destroy(EventCategory $category)
|
||||||
{
|
{
|
||||||
if(auth()->user()->role === 2) {
|
if(auth()->user()->isAdmin()) {
|
||||||
$category->delete();
|
$category->delete();
|
||||||
return response()->json([], 204);
|
return response()->json([], 204);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -33,7 +33,7 @@ class EventController extends Controller
|
|||||||
* Store a newly created resource in storage.
|
* Store a newly created resource in storage.
|
||||||
*
|
*
|
||||||
* @param EventRequest $request
|
* @param EventRequest $request
|
||||||
* @return void
|
* @return \Illuminate\Http\JsonResponse
|
||||||
*/
|
*/
|
||||||
public function store(EventRequest $request)
|
public function store(EventRequest $request)
|
||||||
{
|
{
|
||||||
@@ -51,11 +51,13 @@ class EventController extends Controller
|
|||||||
* Display the specified resource.
|
* Display the specified resource.
|
||||||
*
|
*
|
||||||
* @param \App\Models\Event $event
|
* @param \App\Models\Event $event
|
||||||
* @return \Illuminate\Http\Response
|
* @return \Illuminate\Http\JsonResponse
|
||||||
*/
|
*/
|
||||||
public function show(Event $event)
|
public function show(Event $event)
|
||||||
{
|
{
|
||||||
//
|
return (new EventResource($event))
|
||||||
|
->response()
|
||||||
|
->setStatusCode(200);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -209,8 +209,6 @@ class EventsTest extends TestCase
|
|||||||
$response->assertStatus(403);
|
$response->assertStatus(403);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/** @test */
|
/** @test */
|
||||||
public function a_user_can_create_an_event()
|
public function a_user_can_create_an_event()
|
||||||
{
|
{
|
||||||
@@ -220,14 +218,7 @@ class EventsTest extends TestCase
|
|||||||
app(\DatabaseSeeder::class)->call(\EventCategorySeeder::class);
|
app(\DatabaseSeeder::class)->call(\EventCategorySeeder::class);
|
||||||
|
|
||||||
//dd(EventCategory::all());
|
//dd(EventCategory::all());
|
||||||
$response = $this->post('/api/events', [
|
$response = $this->post('/api/events', $this->data())->assertStatus(201);
|
||||||
'name' => 'Test name event',
|
|
||||||
'description' => 'Test description event',
|
|
||||||
'category_id' => 1,
|
|
||||||
'start_date' => '2020-07-20 09:00:00',
|
|
||||||
'end_date' => '2020-07-26 09:00:00',
|
|
||||||
'location' => 'Marcillac',
|
|
||||||
])->assertStatus(201);
|
|
||||||
|
|
||||||
$event = Event::first();
|
$event = Event::first();
|
||||||
|
|
||||||
@@ -262,4 +253,69 @@ class EventsTest extends TestCase
|
|||||||
]
|
]
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/** @test */
|
||||||
|
public function event_name_are_required()
|
||||||
|
{
|
||||||
|
$this->actingAs($user = factory(\App\User::class)->create(), 'api');
|
||||||
|
$response = $this->post('/api/events', array_merge($this->data(), ['name' => '']));
|
||||||
|
|
||||||
|
$response->assertSessionHasErrors('name');
|
||||||
|
$this->assertCount(0, EventCategory::all());
|
||||||
|
}
|
||||||
|
|
||||||
|
/** @test */
|
||||||
|
public function event_start_date_are_required()
|
||||||
|
{
|
||||||
|
$this->actingAs($user = factory(\App\User::class)->create(), 'api');
|
||||||
|
$response = $this->post('/api/events', array_merge($this->data(), ['start_date' => '']));
|
||||||
|
|
||||||
|
$response->assertSessionHasErrors('start_date');
|
||||||
|
$this->assertCount(0, EventCategory::all());
|
||||||
|
}
|
||||||
|
|
||||||
|
/** @test */
|
||||||
|
public function an_event_can_be_retrieved()
|
||||||
|
{
|
||||||
|
$this->actingAs($user = factory(User::class)->create(), 'api');
|
||||||
|
app(\DatabaseSeeder::class)->call(\EventCategorySeeder::class);
|
||||||
|
|
||||||
|
$event = $user->events()->create($this->data());
|
||||||
|
|
||||||
|
$response = $this->get('/api/events/' . $event->id );
|
||||||
|
|
||||||
|
$response->assertJson([
|
||||||
|
'data' => [
|
||||||
|
'type' => 'events',
|
||||||
|
'event_id' => $event->id,
|
||||||
|
'attributes' => [
|
||||||
|
'data' => [
|
||||||
|
'name' => $event->name,
|
||||||
|
'description' => $event->description,
|
||||||
|
'start_date' => $event->start_date,
|
||||||
|
'end_date' => $event->end_date,
|
||||||
|
'location' => $event->location,
|
||||||
|
'category' => [
|
||||||
|
'data' => [
|
||||||
|
'category_id' => 1
|
||||||
|
],
|
||||||
|
],
|
||||||
|
]
|
||||||
|
],
|
||||||
|
],
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private function data()
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
'name' => 'Test name event',
|
||||||
|
'description' => 'Test description event',
|
||||||
|
'category_id' => 1,
|
||||||
|
'start_date' => '2020-07-20 09:00:00',
|
||||||
|
'end_date' => '2020-07-26 09:00:00',
|
||||||
|
'location' => 'Marcillac',
|
||||||
|
];
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user