diff --git a/app/Entities/Partners/Partner.php b/app/Entities/Partners/Partner.php index d79fd8f..0b4af50 100644 --- a/app/Entities/Partners/Partner.php +++ b/app/Entities/Partners/Partner.php @@ -7,4 +7,9 @@ use Illuminate\Database\Eloquent\Model; class Partner extends Model { protected $fillable = ['name', 'email', 'phone', 'pic', 'address', 'notes', 'is_active']; + + public function owner() + { + return $this->belongsTo('App\Entities\Agencies\Agency'); + } } diff --git a/app/Policies/.gitkeep b/app/Policies/.gitkeep deleted file mode 100644 index e69de29..0000000 diff --git a/database/migrations/2017_10_26_134455_create_partners_table.php b/database/migrations/2017_10_26_134455_create_partners_table.php index ed122fc..9c55395 100644 --- a/database/migrations/2017_10_26_134455_create_partners_table.php +++ b/database/migrations/2017_10_26_134455_create_partners_table.php @@ -22,6 +22,7 @@ class CreatePartnersTable extends Migration $table->string('address')->nullable(); $table->string('notes')->nullable(); $table->boolean('is_active')->default(1); + $table->unsignedInteger('owner_id'); $table->timestamps(); }); } diff --git a/tests/Unit/Models/PartnerTest.php b/tests/Unit/Models/PartnerTest.php index f8be877..6a7b9f0 100644 --- a/tests/Unit/Models/PartnerTest.php +++ b/tests/Unit/Models/PartnerTest.php @@ -2,6 +2,7 @@ namespace Tests\Unit\Models; +use App\Entities\Agencies\Agency; use App\Entities\Partners\Partner; use Illuminate\Foundation\Testing\DatabaseMigrations; use Tests\TestCase as TestCase; @@ -11,9 +12,12 @@ class PartnerTest extends TestCase use DatabaseMigrations; /** @test */ - public function it_has_name_attribute() + public function a_partner_has_an_owner() { - $partner = factory(Partner::class)->create(['name' => 'Partner 1 name']); - $this->assertEquals('Partner 1 name', $partner->name); + $agency = factory(Agency::class)->create(); + $partner = factory(Partner::class)->create(['owner_id' => $agency->id]); + + $this->assertTrue($partner->owner instanceof Agency); + $this->assertEquals($partner->owner->id, $agency->id); } }