예제 #1
0
 /**
  * @return ProjectCreator
  */
 private function GivenAProjectCreator()
 {
     $projectManager = new MockProjectManager();
     $creator = TestHelper::getPartialMock('ProjectCreator', array('createProject'));
     $creator->__construct($projectManager, ReferenceManager::instance());
     return $creator;
 }
예제 #2
0
 function testGetFRSPackageFromDb()
 {
     $packageArray1 = array('package_id' => 1, 'group_id' => 1, 'name' => 'pkg1', 'status_id' => 2, 'rank' => null, 'approve_license' => null, 'data_array' => null, 'package_releases' => null, 'error_state' => null, 'error_message' => null);
     $package1 = FRSPackageFactory::getFRSPackageFromArray($packageArray1);
     $dar1 = new MockDataAccessResult($this);
     $dar1->setReturnValue('isError', false);
     $dar1->setReturnValue('current', $packageArray1);
     $dar1->setReturnValueAt(0, 'valid', true);
     $dar1->setReturnValueAt(1, 'valid', false);
     $dar1->setReturnValue('rowCount', 1);
     $packageArray2 = array('package_id' => 2, 'group_id' => 2, 'name' => 'pkg2', 'status_id' => 1, 'rank' => null, 'approve_license' => null, 'data_array' => null, 'package_releases' => null, 'error_state' => null, 'error_message' => null);
     $package2 = FRSPackageFactory::getFRSPackageFromArray($packageArray2);
     $dar2 = new MockDataAccessResult($this);
     $dar2->setReturnValue('isError', false);
     $dar2->setReturnValue('current', $packageArray2);
     $dar2->setReturnValueAt(0, 'valid', true);
     $dar2->setReturnValueAt(1, 'valid', false);
     $dar2->setReturnValue('rowCount', 1);
     $dar3 = new MockDataAccessResult($this);
     $dar3->setReturnValue('isError', false);
     $dar3->setReturnValue('current', array());
     $dar3->setReturnValueAt(0, 'valid', true);
     $dar3->setReturnValueAt(1, 'valid', false);
     $dar3->setReturnValue('rowCount', 0);
     $dao = new FRSPackageDaoTestVersion();
     $dao->da = TestHelper::getPartialMock('DataAccess', array('DataAccess'));
     $dao->setReturnValue('retrieve', $dar1, array('SELECT p.*  FROM frs_package AS p  WHERE  p.package_id = 1  ORDER BY rank DESC LIMIT 1'));
     $dao->setReturnValue('retrieve', $dar2, array('SELECT p.*  FROM frs_package AS p  WHERE  p.package_id = 2  AND p.status_id != 0  ORDER BY rank DESC LIMIT 1'));
     $dao->setReturnValue('retrieve', $dar3);
     $PackageFactory = new FRSPackageFactoryTestVersion();
     $PackageFactory->setReturnValue('_getFRSPackageDao', $dao);
     $this->assertEqual($PackageFactory->getFRSPackageFromDb(1, null, 0x1), $package1);
     $this->assertEqual($PackageFactory->getFRSPackageFromDb(2), $package2);
 }
 public function itDeletesTheRepository()
 {
     $event = TestHelper::getPartialMock('SystemEvent_GIT_REPO_DELETE', array('getRepositoryFactory'));
     $event->setParameters($this->project_id . SystemEvent::PARAMETER_SEPARATOR . $this->repository_id);
     stub($event)->getRepositoryFactory()->returns($this->git_repository_factory);
     $event->process();
 }
예제 #4
0
 public function testIsFieldUsedInWorkflow()
 {
     $tracker = new MockTracker();
     $tracker->setReturnValue('getId', 123);
     $field_status = new MockTracker_FormElement_Field_List();
     $field_status->setReturnReference('getTracker', $tracker);
     $field_status->setReturnValue('getId', 1001);
     $field_start_date = new MockTracker_FormElement_Field_List();
     $field_start_date->setReturnReference('getTracker', $tracker);
     $field_start_date->setReturnValue('getId', 1002);
     $field_close_date = new MockTracker_FormElement_Field_List();
     $field_close_date->setReturnReference('getTracker', $tracker);
     $field_close_date->setReturnValue('getId', 1003);
     $workflow = new MockWorkflow();
     $workflow->setReturnValue('getFieldId', $field_status->getId());
     $tf = new MockTransitionFactory();
     $tf->setReturnValue('isFieldUsedInTransitions', false, array($field_start_date));
     $tf->setReturnValue('isFieldUsedInTransitions', true, array($field_close_date));
     $tf->expectCallCount('isFieldUsedInTransitions', 2);
     $wf = TestHelper::getPartialMock('WorkflowFactory', array('getWorkflowByTrackerId', 'getTransitionFactory'));
     $wf->setReturnReference('getTransitionFactory', $tf);
     $wf->setReturnReference('getWorkflowByTrackerId', $workflow, array($tracker->getId()));
     $this->assertTrue($wf->isFieldUsedInWorkflow($field_status));
     $this->assertFalse($wf->isFieldUsedInWorkflow($field_start_date));
     $this->assertTrue($wf->isFieldUsedInWorkflow($field_close_date));
 }
예제 #5
0
 /**
  * @return SVN_Apache_SvnrootConf 
  */
 private function GivenSvnrootForTwoGroups()
 {
     $projects = array(array('unix_group_name' => 'gpig', 'group_name' => 'Guinea Pig', 'group_id' => 101), array('unix_group_name' => 'garden', 'group_name' => 'The Garden Project', 'group_id' => 102));
     $factory = TestHelper::getPartialMock('SVN_Apache_Auth_Factory', array('getEventManager'));
     $factory->setReturnValue('getEventManager', new MockEventManager());
     return new SVN_Apache_SvnrootConf($factory, $projects);
 }
예제 #6
0
 function setUp()
 {
     parent::setUp();
     $this->factory = TestHelper::getPartialMock('Tracker_CrossSearch_SharedFieldFactory', array('getDao'));
     $this->dao = new MockTracker_CrossSearch_SharedFieldDao();
     $this->factory->setReturnValue('getDao', $this->dao);
 }
 private function GivenAnArtifact($tracker)
 {
     $artifact = TestHelper::getPartialMock('Tracker_Artifact', array('createNewChangeset', 'getUserManager'));
     $user_manager = stub('UserManager')->getCurrentUser()->returns(aUser()->withId(120)->build());
     stub($artifact)->getUserManager()->returns($user_manager);
     $artifact->setTracker($tracker);
     return $artifact;
 }
예제 #8
0
 public function testItUsesTheSynchronizerTokenToAvoidDuplicateForks()
 {
     $git = TestHelper::getPartialMock('Git', array('checkSynchronizerToken'));
     $git->throwOn('checkSynchronizerToken', new Exception());
     $git->setGroupId(101);
     $this->expectException();
     $git->_doDispatchForkRepositories(null, null);
 }
예제 #9
0
 public function testProjectListMustContainsOnlyProjectsWithGitEnabled()
 {
     $user = $this->GivenAUserWithProjects();
     $project = $this->GivenAProjectWithoutGitService('123', 'Guinea Pig');
     $manager = $this->GivenAProjectManager($project);
     $view = TestHelper::getPartialMock('GitViews', array());
     $this->assertNoPattern('/Guinea Pig/', $view->getUserProjectsAsOptions($user, $manager, '50'));
 }
예제 #10
0
function partial_mock($classname, array $mocked_methods, array $construct_params = null)
{
    $object = TestHelper::getPartialMock($classname, $mocked_methods);
    if ($construct_params) {
        call_user_func_array(array($object, '__construct'), $construct_params);
    }
    return $object;
}
예제 #11
0
파일: GitTest.php 프로젝트: nickl-/tuleap
 public function testDispatchToForkCrossProjectIfRequestsProject()
 {
     $git = TestHelper::getPartialMock('Git', array('_doDispatchForkCrossProject', 'addView'));
     $request = new Codendi_Request(array('choose_destination' => 'project'));
     $git->setRequest($request);
     $git->expectOnce('_doDispatchForkCrossProject');
     $git->_dispatchActionAndView('do_fork_repositories', null, null, null);
 }
예제 #12
0
 public function setUp()
 {
     parent::setUp();
     $this->field = aMockField()->build();
     $this->from_value = mock('Tracker_FormElement_Field_List_Value');
     $this->to_value = mock('Tracker_FormElement_Field_List_Value');
     $this->xml_mapping = array('F1' => $this->field, 'F32-V1' => $this->from_value, 'F32-V0' => $this->to_value);
     $this->factory = TestHelper::getPartialMock('TransitionFactory', array());
 }
예제 #13
0
 public function __construct()
 {
     $this->factory = TestHelper::getPartialMock('Transition_PostActionFactory', array('getDao', 'getFormElementFactory'));
     $this->form_element_factory = mock('Tracker_FormElementFactory');
     $this->daos = array('field_date' => mock('Transition_PostAction_Field_DateDao'), 'field_int' => mock('Transition_PostAction_Field_IntDao'), 'field_float' => mock('Transition_PostAction_Field_FloatDao'));
     foreach ($this->daos as $short_name => $dao) {
         stub($dao)->searchByTransitionId('*')->returns(array());
     }
 }
예제 #14
0
 public function _itReturnsCrossSearchViewIncludingTheContentView()
 {
     $user = aUser()->build();
     $project = mock('Project');
     $cross_search_query = mock('Tracker_CrossSearch_Query');
     $view_builder = TestHelper::getPartialMock('Tracker_CrossSearch_ViewBuilder', array('buildContentView', 'getService'));
     $view_builder->expectOnce('buildContentView', array($user, $project, $cross_search_query));
     $view_builder->build($user, $project, $cross_search_query);
 }
 public function setUp()
 {
     parent::setUp();
     $this->user = mock('User');
     $this->field = TestHelper::getPartialMock('Tracker_FormElement_Field_Computed', array('getProperty'));
     stub($this->field)->getProperty()->returns('effort');
     $this->formelement_factory = mock('Tracker_FormElementFactory');
     Tracker_FormElementFactory::setInstance($this->formelement_factory);
 }
 public function testRepoIDShouldBeTheValue()
 {
     $view = new MockGitViews();
     $user = mock('PFUser');
     $strategy = TestHelper::getPartialMock($this->classname, array('getRepository'));
     $repositories = $this->getFlatTree($strategy);
     $a_repository_id = 4;
     $strategy->__construct($view);
     $this->assertPattern('`value="' . $a_repository_id . '"`', $strategy->fetch($repositories, $user));
 }
 public function itReturnsZeroWhenUserDoesntHavePermissions()
 {
     $user = aUser()->build();
     $artifact_value = stub('Tracker_Artifact_ChangesetValue_Float')->getValue()->returns(123.45);
     $artifact = aMockArtifact()->withValue($artifact_value)->build();
     $field = TestHelper::getPartialMock('Tracker_FormElement_Field_Float', array('userCanRead'));
     stub($field)->userCanRead($user)->returns(false);
     $actual_value = $field->getComputedValue($user, $artifact);
     $this->assertEqual(0, $actual_value);
 }
 public function testFlatTreeShouldReturnRepresentation()
 {
     $view = new MockGitViews();
     $user = mock('PFUser');
     $strategy = TestHelper::getPartialMock($this->classname, array('getRepository'));
     $repositories = $this->getFlatTree($strategy);
     $expectedPattern = $this->getExpectedPattern($repositories);
     $strategy->__construct($view);
     $this->assertPattern('`' . $expectedPattern . '`', $strategy->fetch($repositories, $user));
 }
예제 #19
0
 /**
  * @return ProjectCreator
  */
 private function GivenAProjectCreator() {
     $projectManager       = new MockProjectManager();
     $this->ruleShortName  = new MockRule_ProjectName();
     $this->ruleFullName   = new MockRule_ProjectFullName();
     
     $creator              = TestHelper::getPartialMock('ProjectCreator', array('create_project'));
     $creator->__construct($projectManager, $this->ruleShortName, $this->ruleFullName);
     
     return $creator;
 }
예제 #20
0
 public function setUp()
 {
     parent::setUp();
     $this->current_user = aUser()->build();
     $this->form_element_factory = mock('Tracker_FormElementFactory');
     Tracker_FormElementFactory::setInstance($this->form_element_factory);
     $this->dao = mock('Tracker_Chart_Burndown_Data_LinkedArtifactsDao');
     stub($this->dao)->searchRemainingEffort()->returns(array());
     $this->burndown_data = TestHelper::getPartialMock('Tracker_Chart_Burndown_Data_LinkedArtifacts', array('getBurndownDao'));
     stub($this->burndown_data)->getBurndownDao()->returns($this->dao);
 }
예제 #21
0
 public function setUp()
 {
     parent::setUp();
     $this->planning_controller = mock('Planning_Controller');
     $this->router = TestHelper::getPartialMock('AgileDashboardRouter', array('getViewBuilder', 'renderAction', 'executeAction', 'buildController', 'getProjectManager', 'getArtifactFactory', 'buildMilestoneController'));
     $this->router->__construct(mock('Plugin'), mock('Planning_MilestoneFactory'), mock('PlanningFactory'), mock('Tracker_HierarchyFactory'));
     stub($this->router)->buildController()->returns($this->planning_controller);
     stub($this->router)->getViewBuilder()->returns(mock('Planning_ViewBuilder'));
     stub($this->router)->getProjectManager()->returns(mock('ProjectManager'));
     stub($this->router)->buildMilestoneController()->returns(mock('Planning_MilestoneController'));
 }
예제 #22
0
 private function GivenAFullApacheConf()
 {
     $backend = TestHelper::getPartialMock('LDAP_BackendSVN', array('_getServiceDao', 'getLdap', 'getLDAPProjectManager', 'getSVNApacheAuthFactory'));
     $dar = TestHelper::arrayToDar(array('unix_group_name' => 'gpig', 'group_name' => 'Guinea Pig', 'group_id' => 101), array('unix_group_name' => 'garden', 'group_name' => 'The Garden Project', 'group_id' => 102));
     $dao = new MockServiceDao();
     $dao->setReturnValue('searchActiveUnixGroupByUsedService', $dar);
     $backend->setReturnValue('_getServiceDao', $dao);
     $factory = TestHelper::getPartialMock('SVN_Apache_Auth_Factory', array('getEventManager'));
     $factory->setReturnValue('getEventManager', new LDAP_BackendSVNTestEventManager());
     $backend->setReturnValue('getSVNApacheAuthFactory', $factory);
     return $backend->getApacheConf();
 }
 public function setUp()
 {
     parent::setUp();
     ForgeConfig::store();
     ForgeConfig::set('codendi_dir', AGILEDASHBOARD_BASE_DIR . '/../../..');
     $milestone_controller_factory = mock('Planning_MilestoneControllerFactory');
     $this->planning_controller = mock('Planning_Controller');
     $this->router = TestHelper::getPartialMock('AgileDashboardRouter', array('renderAction', 'executeAction', 'buildController', 'buildPlanningController', 'getArtifactFactory'));
     $this->router->__construct(mock('Plugin'), mock('Planning_MilestoneFactory'), mock('PlanningFactory'), mock('Planning_ShortAccessFactory'), $milestone_controller_factory, mock('ProjectManager'), mock('AgileDashboard_XMLFullStructureExporter'), mock('AgileDashboard_KanbanManager'), mock('AgileDashboard_ConfigurationManager'), mock('AgileDashboard_KanbanFactory'), mock('PlanningPermissionsManager'), mock('AgileDashboard_HierarchyChecker'));
     stub($this->router)->buildPlanningController()->returns($this->planning_controller);
     stub($milestone_controller_factory)->getMilestoneController()->returns(mock('Planning_MilestoneController'));
 }
예제 #24
0
 function testAddedStyleSheetShouldBeRenderedInPageHeaders()
 {
     $l = TestHelper::getPartialMock('Layout', array('getEventManager', 'getFontSizeName', 'getStylesheetTheme'));
     $l->setReturnValue('getEventManager', new MockEventManager());
     $css = '/viewvc-static/styles.css';
     $l->addStylesheet($css);
     ob_start();
     $l->displayStylesheetElements(array());
     $content = ob_get_contents();
     ob_end_clean();
     $this->assertTrue(strpos($content, '<link rel="stylesheet" type="text/css" href="' . $css . '" />'), "There should be a custom css here.");
 }
예제 #25
0
 public function itExecuteTheCommandOnTheSystem()
 {
     $user = mock('User');
     $project = stub('Project')->getUnixName()->returns($this->project_name);
     $svn_path = '/tags';
     $svn_repo_listing = TestHelper::getPartialMock('SVN_RepositoryListing', array('getDirectoryListing'));
     $svn_perms_mgr = stub('SVN_PermissionsManager')->userCanRead()->returns(true);
     $svn_repo_listing = new SVN_RepositoryListing($svn_perms_mgr);
     $tags = $svn_repo_listing->getSvnPath($user, $project, $svn_path);
     $tags = array_values($tags);
     $tags = sort($tags);
     $this->assertEqual($tags, array('1.0', '2.0'));
 }
예제 #26
0
파일: GitTest.php 프로젝트: blestab/tuleap
 public function testDispatchToForkCrossProjectIfRequestsProject()
 {
     $git = TestHelper::getPartialMock('Git', array('_doDispatchForkCrossProject', 'addView'));
     $request = new Codendi_Request(array('choose_destination' => 'project'));
     $git->setRequest($request);
     $factory = new MockGitRepositoryFactory();
     $git->setFactory($factory);
     $user = mock('PFUser');
     $user->setReturnValue('isMember', true);
     $git->user = $user;
     $git->expectOnce('_doDispatchForkCrossProject');
     $git->_dispatchActionAndView('do_fork_repositories', null, null, null);
 }
 public function setUp()
 {
     parent::setUp();
     $this->user = mock('PFUser');
     $this->dao = mock('Tracker_FormElement_Field_ComputedDao');
     $this->field = TestHelper::getPartialMock('Tracker_FormElement_Field_Computed', array('getProperty', 'getDao'));
     stub($this->field)->getProperty('target_field_name')->returns('effort');
     stub($this->field)->getProperty('fast_compute')->returns(1);
     stub($this->field)->getDao()->returns($this->dao);
     $this->artifact_factory = mock('Tracker_ArtifactFactory');
     Tracker_ArtifactFactory::setInstance($this->artifact_factory);
     $this->formelement_factory = mock('Tracker_FormElementFactory');
     Tracker_FormElementFactory::setInstance($this->formelement_factory);
 }
예제 #28
0
 private function GivenAFullApacheConf()
 {
     $backend = TestHelper::getPartialMock('LDAP_BackendSVN', array('getLdap', 'getLDAPProjectManager', 'getSVNApacheAuthFactory', 'getSvnDao'));
     $project_array_01 = array('repository_name' => 'gpig', 'group_name' => 'Guinea Pig', 'group_id' => 101, 'auth_mod' => 'modmysql');
     $project_array_02 = array('repository_name' => 'garden', 'group_name' => 'The Garden Project', 'group_id' => 102, 'auth_mod' => 'modmysql');
     $svn_dao = mock('SVN_DAO');
     stub($svn_dao)->searchSvnRepositories()->returnsDar($project_array_01, $project_array_02);
     stub($backend)->getsvnDao()->returns($svn_dao);
     $ldap = mock('LDAP');
     stub($ldap)->getLDAPParam('server')->returns('ldap://ldap.tuleap.com');
     stub($ldap)->getLDAPParam('dn')->returns('dc=tuleap,dc=com');
     $project_manager = mock('ProjectManager');
     $event_manager = new LDAP_BackendSVNTestEventManager();
     $token_manager = mock('SVN_TokenUsageManager');
     $factory = new SVN_Apache_Auth_Factory($project_manager, $event_manager, $token_manager);
     $backend->setReturnValue('getSVNApacheAuthFactory', $factory);
     return $backend->getApacheConf();
 }
 public function setUp()
 {
     parent::setUp();
     $this->dao = mock('GitDao');
     $this->gerrit_server = mock('Git_RemoteServer_GerritServer');
     $this->server_factory = mock('Git_RemoteServer_GerritServerFactory');
     $this->project_creator = mock('Git_Driver_Gerrit_ProjectCreator');
     $this->gitolite_backend = mock('Git_Backend_Gitolite');
     $this->repository = mock('GitRepository');
     stub($this->repository)->getBackend()->returns($this->gitolite_backend);
     $factory = mock('GitRepositoryFactory');
     stub($factory)->getRepositoryById($this->repository_id)->returns($this->repository);
     $id = $type = $parameters = $priority = $status = $create_date = $process_date = $end_date = $log = 0;
     $this->event = TestHelper::getPartialMock('SystemEvent_GIT_GERRIT_MIGRATION', array('done', 'warning', 'error'), array($id, $type, $parameters, $priority, $status, $create_date, $process_date, $end_date, $log));
     $this->event->setParameters("{$this->repository_id}::{$this->remote_server_id}::true");
     $this->logger = mock('Logger');
     $this->event->injectDependencies($this->dao, $factory, $this->server_factory, $this->logger, $this->project_creator, mock('Git_GitRepositoryUrlManager'));
 }
예제 #30
0
 private function GivenAFullApacheConf()
 {
     $backend = TestHelper::getPartialMock('LDAP_BackendSVN', array('_getServiceDao', 'getLdap', 'getLDAPProjectManager', 'getSVNApacheAuthFactory'));
     $project_array_01 = array('unix_group_name' => 'gpig', 'group_name' => 'Guinea Pig', 'group_id' => 101);
     $project_array_02 = array('unix_group_name' => 'garden', 'group_name' => 'The Garden Project', 'group_id' => 102);
     $dar = TestHelper::arrayToDar($project_array_01, $project_array_02);
     $dao = new MockServiceDao();
     $dao->setReturnValue('searchActiveUnixGroupByUsedService', $dar);
     $backend->setReturnValue('_getServiceDao', $dao);
     $ldap = mock('LDAP');
     stub($ldap)->getLDAPParam('server')->returns('ldap://ldap.tuleap.com');
     stub($ldap)->getLDAPParam('dn')->returns('dc=tuleap,dc=com');
     $project_manager = mock('ProjectManager');
     $event_manager = new LDAP_BackendSVNTestEventManager();
     $token_manager = mock('SVN_TokenUsageManager');
     $factory = new SVN_Apache_Auth_Factory($project_manager, $event_manager, $token_manager);
     $backend->setReturnValue('getSVNApacheAuthFactory', $factory);
     return $backend->getApacheConf();
 }