Browse Source

Change Agency addWorkers to Agency addWorker for single worker

pull/1/head
Nafies Luthfi 8 years ago
parent
commit
dfb701c0b5
  1. 10
      app/Entities/Agencies/Agency.php
  2. 3
      tests/Feature/ManageVendorsTest.php
  3. 8
      tests/Unit/Models/AgencyTest.php

10
app/Entities/Agencies/Agency.php

@ -2,8 +2,8 @@
namespace App\Entities\Agencies; namespace App\Entities\Agencies;
use App\Entities\Users\User;
use Illuminate\Database\Eloquent\Model; use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Collection;
class Agency extends Model class Agency extends Model
{ {
@ -24,13 +24,13 @@ class Agency extends Model
return $this->belongsToMany('App\Entities\Users\User', 'agency_workers', 'agency_id', 'worker_id'); return $this->belongsToMany('App\Entities\Users\User', 'agency_workers', 'agency_id', 'worker_id');
} }
public function addWorkers(Collection $workers)
public function addWorker(User $worker)
{ {
$this->workers()->attach($workers);
$this->workers()->attach($worker);
} }
public function removeWorkers(Collection $workers)
public function removeWorker(User $worker)
{ {
$this->workers()->detach($workers);
$this->workers()->detach($worker);
} }
} }

3
tests/Feature/ManageVendorsTest.php

@ -3,13 +3,10 @@
namespace Tests\Feature; namespace Tests\Feature;
use App\Entities\Partners\Vendor; use App\Entities\Partners\Vendor;
use Illuminate\Foundation\Testing\DatabaseMigrations;
use Tests\TestCase as TestCase; use Tests\TestCase as TestCase;
class ManageVendorsTest extends TestCase class ManageVendorsTest extends TestCase
{ {
use DatabaseMigrations;
/** @test */ /** @test */
public function user_can_see_vendor_list_in_vendor_index_page() public function user_can_see_vendor_list_in_vendor_index_page()
{ {

8
tests/Unit/Models/AgencyTest.php

@ -33,7 +33,8 @@ class AgencyTest extends TestCase
$agency = factory(Agency::class)->create(); $agency = factory(Agency::class)->create();
$workers = factory(User::class, 2)->create(); $workers = factory(User::class, 2)->create();
$agency->addWorkers($workers);
$agency->addWorker($workers[0]);
$agency->addWorker($workers[1]);
$this->assertCount(2, $agency->workers); $this->assertCount(2, $agency->workers);
$this->assertInstanceOf(Collection::class, $agency->workers); $this->assertInstanceOf(Collection::class, $agency->workers);
@ -46,11 +47,12 @@ class AgencyTest extends TestCase
$agency = factory(Agency::class)->create(); $agency = factory(Agency::class)->create();
$workers = factory(User::class, 2)->create(); $workers = factory(User::class, 2)->create();
$agency->addWorkers($workers);
$agency->addWorker($workers[0]);
$agency->addWorker($workers[1]);
$this->assertCount(2, $agency->workers); $this->assertCount(2, $agency->workers);
$agency->removeWorkers($workers->take(1));
$agency->removeWorker($workers[0]);
$agency = $agency->fresh(); $agency = $agency->fresh();
$this->assertCount(1, $agency->workers); $this->assertCount(1, $agency->workers);

Loading…
Cancel
Save