32 changed files with 122 additions and 262 deletions
-
10app/Entities/Partners/Customer.php
-
7app/Entities/Partners/Vendor.php
-
12app/Entities/Payments/Payment.php
-
3app/Entities/Projects/Project.php
-
2app/Entities/Projects/ProjectsRepository.php
-
4app/Policies/Partners/VendorPolicy.php
-
4app/Policies/Projects/ProjectPolicy.php
-
6app/Providers/AuthServiceProvider.php
-
3database/factories/CustomerFactory.php
-
3database/factories/ProjectFactory.php
-
6database/factories/VendorFactory.php
-
1database/migrations/2016_07_06_110052_create_projects_table.php
-
1database/migrations/2017_10_26_134455_create_customers_table.php
-
1database/migrations/2017_11_01_185745_create_vendors_table.php
-
2tests/Feature/Api/ApiManageProjectsTest.php
-
6tests/Feature/InvoiceEntryTest.php
-
20tests/Feature/ManageFeaturesTest.php
-
19tests/Feature/ManageProjectsTest.php
-
21tests/Feature/ManageSubscriptionsTest.php
-
6tests/Feature/ManageTasksTest.php
-
9tests/Feature/Partners/ManageCustomersTest.php
-
20tests/Feature/Payments/ManagePaymentsTest.php
-
18tests/Feature/Payments/PaymentSearchTest.php
-
6tests/Feature/Projects/UploadFilesTest.php
-
61tests/Unit/Models/AgencyTest.php
-
15tests/Unit/Models/CustomerTest.php
-
7tests/Unit/Models/InvoiceTest.php
-
39tests/Unit/Models/ProjectTest.php
-
10tests/Unit/Models/VendorTest.php
-
18tests/Unit/Policies/AgencyPolicyTest.php
-
6tests/Unit/Policies/ProjectPolicyTest.php
-
6tests/Unit/Policies/VendorPolicyTest.php
@ -1,15 +1,11 @@ |
|||||
<?php |
<?php |
||||
|
|
||||
use App\Entities\Agencies\Agency; |
|
||||
use App\Entities\Partners\Vendor; |
use App\Entities\Partners\Vendor; |
||||
use Faker\Generator as Faker; |
use Faker\Generator as Faker; |
||||
|
|
||||
$factory->define(Vendor::class, function (Faker $faker) { |
$factory->define(Vendor::class, function (Faker $faker) { |
||||
|
|
||||
return [ |
return [ |
||||
'name' => $faker->word, |
|
||||
'owner_id' => function () { |
|
||||
return factory(Agency::class)->create()->id; |
|
||||
}, |
|
||||
|
'name' => $faker->company, |
||||
]; |
]; |
||||
}); |
}); |
||||
@ -1,61 +0,0 @@ |
|||||
<?php |
|
||||
|
|
||||
namespace Tests\Unit\Models; |
|
||||
|
|
||||
use App\Entities\Agencies\Agency; |
|
||||
use App\Entities\Projects\Project; |
|
||||
use App\Entities\Users\User; |
|
||||
use Illuminate\Support\Collection; |
|
||||
use Tests\TestCase; |
|
||||
|
|
||||
class AgencyTest extends TestCase |
|
||||
{ |
|
||||
/** @test */ |
|
||||
public function agency_has_an_owner() |
|
||||
{ |
|
||||
$agency = factory(Agency::class)->create(); |
|
||||
$this->assertInstanceOf(User::class, $agency->owner); |
|
||||
} |
|
||||
|
|
||||
/** @test */ |
|
||||
public function agency_has_many_projects() |
|
||||
{ |
|
||||
$agency = factory(Agency::class)->create(); |
|
||||
$project = factory(Project::class)->create(['owner_id' => $agency->id]); |
|
||||
|
|
||||
$this->assertInstanceOf(Collection::class, $agency->projects); |
|
||||
$this->assertInstanceOf(Project::class, $agency->projects->first()); |
|
||||
} |
|
||||
|
|
||||
/** @test */ |
|
||||
public function agency_can_has_many_workers() |
|
||||
{ |
|
||||
$agency = factory(Agency::class)->create(); |
|
||||
$workers = factory(User::class, 2)->create(); |
|
||||
|
|
||||
$agency->addWorker($workers[0]); |
|
||||
$agency->addWorker($workers[1]); |
|
||||
|
|
||||
$this->assertCount(2, $agency->workers); |
|
||||
$this->assertInstanceOf(Collection::class, $agency->workers); |
|
||||
$this->assertInstanceOf(User::class, $agency->workers->first()); |
|
||||
} |
|
||||
|
|
||||
/** @test */ |
|
||||
public function agency_can_remove_some_workers() |
|
||||
{ |
|
||||
$agency = factory(Agency::class)->create(); |
|
||||
$workers = factory(User::class, 2)->create(); |
|
||||
|
|
||||
$agency->addWorker($workers[0]); |
|
||||
$agency->addWorker($workers[1]); |
|
||||
|
|
||||
$this->assertCount(2, $agency->workers); |
|
||||
|
|
||||
$agency->removeWorker($workers[0]); |
|
||||
|
|
||||
$agency = $agency->fresh(); |
|
||||
$this->assertCount(1, $agency->workers); |
|
||||
$this->assertEquals($workers[1]->id, $agency->workers->first()->id); |
|
||||
} |
|
||||
} |
|
||||
@ -1,18 +0,0 @@ |
|||||
<?php |
|
||||
|
|
||||
namespace Tests\Unit\Policies; |
|
||||
|
|
||||
use App\Entities\Agencies\Agency; |
|
||||
use Tests\TestCase as TestCase; |
|
||||
|
|
||||
class AgencyPolicyTest extends TestCase |
|
||||
{ |
|
||||
/** @test */ |
|
||||
public function user_can_manage_owned_agency() |
|
||||
{ |
|
||||
$user = $this->createUser(); |
|
||||
factory(Agency::class)->create(['owner_id' => $user->id]); |
|
||||
|
|
||||
$this->assertTrue($user->can('manage', $user->agency)); |
|
||||
} |
|
||||
} |
|
||||
Write
Preview
Loading…
Cancel
Save
Reference in new issue