diff --git a/app/Http/Controllers/Api/PirepController.php b/app/Http/Controllers/Api/PirepController.php index c81e6cc2..366ac465 100644 --- a/app/Http/Controllers/Api/PirepController.php +++ b/app/Http/Controllers/Api/PirepController.php @@ -412,7 +412,7 @@ class PirepController extends RestController * Post the ROUTE for a PIREP, can be done from the ACARS log * @param $id * @param RouteRequest $request - * @return AcarsRouteResource + * @return \Illuminate\Http\JsonResponse * @throws \Symfony\Component\HttpKernel\Exception\BadRequestHttpException */ public function route_post($id, RouteRequest $request) @@ -423,6 +423,7 @@ class PirepController extends RestController Log::info('Posting ROUTE, PIREP: '.$id, $request->post()); + $count = 0; $route = $request->post('route', []); foreach($route as $position) { $position['pirep_id'] = $id; @@ -430,9 +431,11 @@ class PirepController extends RestController $acars = Acars::create($position); $acars->save(); + + ++$count; } - return $this->route_get($id, $request); + return $this->message($count . ' points added', $count); } /** diff --git a/tests/AcarsTest.php b/tests/AcarsTest.php index fd57c09d..7864023c 100644 --- a/tests/AcarsTest.php +++ b/tests/AcarsTest.php @@ -385,10 +385,7 @@ class AcarsTest extends TestCase $uri = '/api/pireps/'.$pirep_id.'/route'; $response = $this->post($uri, ['route' => $post_route]); - $response->assertStatus(200)->assertJsonCount($route_count); - - $body = $response->json(); - $this->allPointsInRoute($post_route, $body); + $response->assertStatus(200)->assertJson(['count' => $route_count]); /** * Get @@ -396,8 +393,9 @@ class AcarsTest extends TestCase $uri = '/api/pireps/' . $pirep_id . '/route'; $response = $this->get($uri); - $response->assertStatus(200)->assertJsonCount($route_count); - $body = $response->json(); + $response->assertStatus(200)->assertJsonCount($route_count, 'data'); + + $body = $response->json()['data']; $this->allPointsInRoute($post_route, $body); /** @@ -409,7 +407,7 @@ class AcarsTest extends TestCase $uri = '/api/pireps/' . $pirep_id . '/route'; $response = $this->get($uri); - $response->assertStatus(200)->assertJsonCount(0); + $response->assertStatus(200)->assertJsonCount(0, 'data'); } /** @@ -420,19 +418,22 @@ class AcarsTest extends TestCase $this->user = factory(App\Models\User::class)->create(); $uri = '/api/pireps/prefile'; + $this->user = factory(App\Models\User::class)->create(); $pirep = factory(App\Models\Pirep::class)->make([ - 'id' => '', 'airline_id' => $this->user->airline_id, 'user_id' => $this->user->id, ])->toArray(); $response = $this->post($uri, $pirep); $response->assertStatus(201); - $pirep = $response->json(); + $pirep_id = $response->json()['data']['id']; + # try readding $response = $this->post($uri, $pirep); $response->assertStatus(200); - $body = $response->json(); + $dupe_pirep_id = $response->json()['data']['id']; + + $this->assertEquals($pirep_id, $dupe_pirep_id); } } diff --git a/tests/FlightTest.php b/tests/FlightTest.php index 98120eef..4f813429 100644 --- a/tests/FlightTest.php +++ b/tests/FlightTest.php @@ -132,13 +132,13 @@ class FlightTest extends TestCase $req = $this->get('/api/user', $headers); $req->assertStatus(200); - $body = $req->json(); + $body = $req->json()['data']; $this->assertEquals(1, sizeof($body['bids'])); $this->assertEquals($flight->id, $body['bids'][0]['flight_id']); $req = $this->get('/api/users/'.$user->id.'/bids', $headers); - $body = $req->json(); + $body = $req->json()['data']; $req->assertStatus(200); $this->assertEquals($flight->id, $body[0]['id']); @@ -156,15 +156,15 @@ class FlightTest extends TestCase $req = $this->get('/api/user', $headers); $req->assertStatus(200); - $body = $req->json(); + $body = $req->json()['data']; $this->assertEquals($user->id, $body['id']); $this->assertEquals(0, sizeof($body['bids'])); $req = $this->get('/api/users/'.$user->id.'/bids', $headers); $req->assertStatus(200); - $body = $req->json(); + $body = $req->json()['data']; - $this->assertEquals(0, sizeof($body)); + $this->assertCount(0, $body); } /** @@ -217,15 +217,15 @@ class FlightTest extends TestCase # And pull the flight details for the user/bids $req = $this->get('/api/user', $headers); $req->assertStatus(200); - $body = $req->json(); + $body = $req->json()['data']; $this->assertEquals($user->id, $body['id']); - $this->assertEquals(0, sizeof($body['bids'])); + $this->assertCount(0, $body['bids']); $req = $this->get('/api/users/'.$user->id.'/bids', $headers); $req->assertStatus(200); - $body = $req->json(); - $this->assertEquals(0, sizeof($body)); + $body = $req->json()['data']; + $this->assertCount(0, $body); } } diff --git a/tests/PIREPTest.php b/tests/PIREPTest.php index 10f2ea91..f93c380f 100644 --- a/tests/PIREPTest.php +++ b/tests/PIREPTest.php @@ -80,7 +80,7 @@ class PIREPTest extends TestCase # Also check via API: $this->get('/api/fleet/aircraft/' . $pirep->aircraft_id, [], $user) - ->assertJson(['airport_id' => $pirep->arr_airport_id]); + ->assertJson(['data' => ['airport_id' => $pirep->arr_airport_id]]); /** * Now go from ACCEPTED to REJECTED @@ -209,7 +209,7 @@ class PIREPTest extends TestCase $uri = '/api/pireps/prefile'; $response = $this->post($uri, $pirep); - $pirep_id = $response->json()['id']; + $pirep_id = $response->json()['data']['id']; $uri = '/api/pireps/' . $pirep_id . '/acars/position'; $acars = factory(App\Models\Acars::class)->make()->toArray(); diff --git a/tests/UserTest.php b/tests/UserTest.php index d8ac52f9..cd97f32c 100644 --- a/tests/UserTest.php +++ b/tests/UserTest.php @@ -47,7 +47,7 @@ class UserTest extends TestCase * Check via API */ $resp = $this->get('/api/user/fleet', [], $user)->assertStatus(200); - $body = $resp->json(); + $body = $resp->json()['data']; # Get the subfleet that's been added in $subfleet_from_api = $body[0]; @@ -61,7 +61,7 @@ class UserTest extends TestCase * Check the user ID call */ $resp = $this->get('/api/users/' . $user->id . '/fleet', [], $user)->assertStatus(200); - $body = $resp->json(); + $body = $resp->json()['data']; # Get the subfleet that's been added in $subfleet_from_api = $body[0]; @@ -112,9 +112,9 @@ class UserTest extends TestCase * Check via API */ $resp = $this->get('/api/user/fleet', [], $user)->assertStatus(200); - $body = $resp->json(); # Get all the aircraft from that subfleet + $body = $resp->json()['data']; $aircraft_from_api = array_merge( collect($body[0]['aircraft'])->pluck('id')->toArray(), collect($body[1]['aircraft'])->pluck('id')->toArray() @@ -168,9 +168,8 @@ class UserTest extends TestCase $this->settingsRepo->store('pireps.restrict_aircraft_to_rank', false); $response = $this->get('/api/flights/' . $flight->id, [], $user); - $body = $response->json(); $response->assertStatus(200); - $this->assertCount(2, $response->json()['subfleets']); + $this->assertCount(2, $response->json()['data']['subfleets']); /* * Now make sure it's filtered out @@ -182,22 +181,22 @@ class UserTest extends TestCase */ $response = $this->get('/api/flights/' . $flight->id, [], $user); $response->assertStatus(200); - $this->assertCount(1, $response->json()['subfleets']); + $this->assertCount(1, $response->json()['data']['subfleets']); /** * Make sure it's filtered out from the flight list */ $response = $this->get('/api/flights', [], $user); - $body = $response->json(); + $body = $response->json()['data']; $response->assertStatus(200); - $this->assertCount(1, $body['data'][0]['subfleets']); + $this->assertCount(1, $body[0]['subfleets']); /** * Filtered from search? */ $response = $this->get('/api/flights/search?flight_id=' . $flight->id, [], $user); $response->assertStatus(200); - $body = $response->json(); - $this->assertCount(1, $body['data'][0]['subfleets']); + $body = $response->json()['data']; + $this->assertCount(1, $body[0]['subfleets']); } }