Flight/Subfleet fares not returning in API #899 (#900)

Make sure proper fares are returned from the API #899
This commit is contained in:
Nabeel S
2020-10-24 15:11:08 -04:00
committed by GitHub
parent b83f7dcac8
commit 1be68d1e63
13 changed files with 206 additions and 95 deletions

View File

@@ -3,7 +3,6 @@
namespace Tests;
use App\Models\Fare;
use App\Models\Subfleet;
use App\Services\FareService;
class SubfleetTest extends TestCase
@@ -19,9 +18,15 @@ class SubfleetTest extends TestCase
public function testSubfleetFaresNoOverride()
{
/** @var FareService $fare_svc */
$fare_svc = app(FareService::class);
$subfleet = factory(Subfleet::class)->create();
$subfleet_aircraft = $this->createSubfleetWithAircraft(1);
/** @var \App\Models\Subfleet $subfleet */
$subfleet = $subfleet_aircraft['subfleet'];
/** @var \App\Models\Fare $fare */
$fare = factory(Fare::class)->create();
$fare_svc->setForSubfleet($subfleet, $fare);
@@ -49,40 +54,4 @@ class SubfleetTest extends TestCase
$fare_svc->delFareFromSubfleet($subfleet, $fare);
$this->assertCount(0, $fare_svc->getForSubfleet($subfleet));
}
public function testSubfleetFaresOverride()
{
$fare_svc = app(FareService::class);
$subfleet = factory(Subfleet::class)->create();
$fare = factory(Fare::class)->create();
$fare_svc->setForSubfleet($subfleet, $fare, [
'price' => 50, 'capacity' => 400,
]);
$ac_fares = $fare_svc->getForSubfleet($subfleet);
$this->assertCount(1, $ac_fares);
$this->assertEquals(50, $ac_fares[0]->price);
$this->assertEquals(400, $ac_fares[0]->capacity);
//
// update the override to a different amount and make sure it updates
//
$fare_svc->setForSubfleet($subfleet, $fare, [
'price' => 150, 'capacity' => 50,
]);
$ac_fares = $fare_svc->getForSubfleet($subfleet);
$this->assertCount(1, $ac_fares);
$this->assertEquals(150, $ac_fares[0]->price);
$this->assertEquals(50, $ac_fares[0]->capacity);
// delete
$fare_svc->delFareFromSubfleet($subfleet, $fare);
$this->assertCount(0, $fare_svc->getForSubfleet($subfleet));
}
}