| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 | 
							- <?php
 
- namespace Tests\Unit\Roles;
 
- use App\Shop\Roles\Exceptions\CreateRoleErrorException;
 
- use App\Shop\Roles\Repositories\RoleRepository;
 
- use App\Shop\Roles\Role;
 
- use Illuminate\Support\Collection;
 
- use Tests\TestCase;
 
- class RoleUnitTest extends TestCase
 
- {
 
-     /** @test */
 
-     public function it_can_list_all_roles()
 
-     {
 
-         factory(Role::class, 5)->create();
 
-         $roleRepo = new RoleRepository(new Role);
 
-         $roles = $roleRepo->listRoles();
 
-         $this->assertInstanceOf(Collection::class, $roles);
 
-         $this->assertCount(6, $roles->all()); // +1 in the TestCase
 
-     }
 
-     /** @test */
 
-     public function it_can_delete_the_role()
 
-     {
 
-         $role = factory(Role::class)->create();
 
-         $roleRepo = new RoleRepository($role);
 
-         $deleted = $roleRepo->deleteRoleById();
 
-         $this->assertTrue($deleted);
 
-     }
 
-     /** @test */
 
-     public function it_can_update_the_role()
 
-     {
 
-         $role = factory(Role::class)->create();
 
-         $data = [
 
-             'name' => 'user',
 
-             'display_name' => 'Website user'
 
-         ];
 
-         $roleRepo = new RoleRepository($role);
 
-         $updated = $roleRepo->updateRole($data);
 
-         $role = $roleRepo->findRoleById($role->id);
 
-         $this->assertTrue($updated);
 
-         $this->assertEquals($data['name'], $role->name);
 
-         $this->assertEquals($data['display_name'], $role->display_name);
 
-     }
 
-     
 
-     /** @test */
 
-     public function it_can_return_the_created_role()
 
-     {
 
-         $roleFactory = factory(Role::class)->create();
 
-         $roleRepo = new RoleRepository(new Role);
 
-         $role = $roleRepo->findRoleById($roleFactory->id);
 
-         $this->assertInstanceOf(Role::class, $role);
 
-         $this->assertEquals($roleFactory->name, $role->name);
 
-         $this->assertEquals($roleFactory->display_name, $role->display_name);
 
-     }
 
-     
 
-     /** @test */
 
-     public function it_can_create_a_role()
 
-     {
 
-         $data = [
 
-             'name' => 'user',
 
-             'display_name' => 'Website user'
 
-         ];
 
-         $roleRepo = new RoleRepository(new Role);
 
-         $role = $roleRepo->createRole($data);
 
-         $this->assertInstanceOf(Role::class, $role);
 
-         $this->assertEquals($data['name'], $role->name);
 
-         $this->assertEquals($data['display_name'], $role->display_name);
 
-     }
 
-     
 
-     /** @test */
 
-     public function it_errors_creating_the_role()
 
-     {
 
-         $this->expectException(CreateRoleErrorException::class);
 
-         $roleRepo = new RoleRepository(new Role());
 
-         $roleRepo->createRole([]);
 
-     }
 
- }
 
 
  |