Xpressengine\Permission\PermissionRepository::update PHP Метод

update() публичный Метод

Update register information
public update ( Permission $item ) : Permission
$item Permission permission instance
Результат Permission
    public function update(Permission $item);

Usage Example

 public function testUpdate()
 {
     list($conn, $query) = $this->getMocks();
     $mockRegistered = m::mock('Xpressengine\\Permission\\Registered');
     $mockRegistered->id = 1;
     $mockRegistered->shouldReceive('getOriginal')->andReturn(['id' => 1, 'type' => 'instance', 'name' => 'board.notice', 'grants' => '{"access":{"type":"power","value":"guest"},"create":{"type":"power","value":"super"}}']);
     $mockRegistered->shouldReceive('diff')->andReturn(['grants' => '{"access":{"type":"power","value":"guest"},"create":{"type":"power","value":"member"}}']);
     $conn->shouldReceive('table')->andReturn($query);
     $query->shouldReceive('where')->once()->with('id', 1)->andReturn($query);
     $query->shouldReceive('update')->once()->with(m::on(function ($array) {
         return $array['grants'] === '{"access":{"type":"power","value":"guest"},"create":{"type":"power","value":"member"}}';
     }))->andReturnNull();
     $instance = new PermissionRepository($conn);
     $registered = $instance->update($mockRegistered);
     $this->assertEquals(1, $registered->id);
     $this->assertEquals(['type' => 'power', 'value' => 'member'], $registered['create']);
     $this->assertEquals('board.notice', $registered->name);
     $this->assertEquals('instance', $registered->type);
 }
All Usage Examples Of Xpressengine\Permission\PermissionRepository::update