public function itRaisesAnExceptionIfTheUserCannotSubmitArtifact()
 {
     stub($this->field_string)->isRequired()->returns(true);
     stub($this->field_text)->isRequired()->returns(false);
     stub($this->field_int)->isRequired()->returns(false);
     stub($this->field_list)->isRequired()->returns(false);
     stub($this->tracker)->userCanSubmitArtifact($this->user)->returns(false);
     $tracker_factory = stub('TrackerFactory')->getTrackerById(101)->returns($this->tracker);
     $form_element_factory = stub('Tracker_FormElementFactory')->getUsedFields()->returns($this->used_fields);
     $kanban = stub('AgileDashboard_Kanban')->getTrackerId()->returns(101);
     $agiledasboard_permission_manager = stub('AgileDashboard_PermissionsManager')->userCanAdministrate()->returns(true);
     stub($this->semantic_title)->getFieldId()->returns(201);
     $this->expectException('Kanban_UserCantAddInPlaceException');
     $checker = new AgileDashboard_KanbanActionsChecker($tracker_factory, $agiledasboard_permission_manager, $form_element_factory);
     $add_in_place = $checker->checkUserCanAddInPlace($this->user, $kanban);
 }
 public function updateLabel(PFUser $user, AgileDashboard_Kanban $kanban, AgileDashboard_KanbanColumn $column, $label)
 {
     $this->kanban_actions_checker->checkUserCanAdministrate($user, $kanban);
     $this->kanban_actions_checker->checkUserCanEditColumnLabel($user, $kanban);
     return $this->formelement_field_list_bind_static_value_dao->updateLabel($column->getId(), $label);
 }