You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.2 KiB
44 lines
1.2 KiB
<?php
|
|
|
|
namespace Tests\Unit\Models;
|
|
|
|
use Tests\TestCase;
|
|
use App\Entities\Partners\Vendor;
|
|
use App\Entities\Payments\Payment;
|
|
use Illuminate\Support\Collection;
|
|
use Illuminate\Foundation\Testing\RefreshDatabase;
|
|
|
|
class VendorTest extends TestCase
|
|
{
|
|
use RefreshDatabase;
|
|
|
|
/** @test */
|
|
public function a_vendor_has_name()
|
|
{
|
|
$vendor = factory(Vendor::class)->make(['name' => 'Vendor 1 name']);
|
|
$this->assertEquals('Vendor 1 name', $vendor->name);
|
|
}
|
|
|
|
/** @test */
|
|
public function a_vendor_has_morph_many_payments_relation()
|
|
{
|
|
$vendor = factory(Vendor::class)->create();
|
|
$payment = factory(Payment::class)->create([
|
|
'partner_id' => $vendor->id,
|
|
'partner_type' => 'App\Entities\Partners\Vendor',
|
|
]);
|
|
|
|
$this->assertInstanceOf(Collection::class, $vendor->payments);
|
|
$this->assertInstanceOf(Payment::class, $vendor->payments->first());
|
|
}
|
|
|
|
/** @test */
|
|
public function a_vendor_has_status_attribute()
|
|
{
|
|
$vendor = factory(Vendor::class)->make(['is_active' => 1]);
|
|
$this->assertEquals(__('app.active'), $vendor->status);
|
|
|
|
$vendor->is_active = 0;
|
|
$this->assertEquals(__('app.in_active'), $vendor->status);
|
|
}
|
|
}
|