/** * Test the Parameterize function of the model * @test * @depends setGetTest * @param \Paymill\Models\Request\Client $client */ public function parameterizeTest($client) { $testId = "client_88a388d9dd48f86c3136"; $client->setId($testId); $creationArray = $client->parameterize("create"); $updateArray = $client->parameterize("update"); $getOneArray = $client->parameterize("getOne"); $this->assertEquals($creationArray, array('email' => "*****@*****.**", 'description' => "Lovely Client")); $this->assertEquals($updateArray, array('email' => '*****@*****.**', 'description' => 'Lovely Client')); $this->assertEquals($getOneArray, array('count' => 1, 'offset' => 0)); }
/** * @test * @codeCoverageIgnore * @expectedException \Paymill\Services\PaymillException * @expectedExceptionMessage 'PluginsAtPaymillDotde' is not a valid email address. */ public function createClientWithInvalidEmail() { $this->_model->setEmail('PluginsAtPaymillDotde')->setDescription('Test'); $result = $this->_service->create($this->_model); $this->assertInstanceOf('Paymill\\Models\\Response\\Client', $result); return $result; }
/** * Tests the exception trigger in the getOne request method * @test * @expectedException \Paymill\Services\PaymillException * @expectedExceptionMessage Undefined Error. This should not happen! */ public function getOneExceptionTest() { $outputArray = array(); $outputArray['header']['status'] = 500; $this->_getCurlMock($this->_client->getServiceResource() . $this->_client->getId(), $this->_client->parameterize("getOne"), "GET", $outputArray); $this->_client = $this->_request->getOne($this->_client); }
/** * Tests the parameter return from parameterize('getAll') * @param \Paymill\Models\Request\Client $model * @test * @depends setGetTest */ public function parameterizeGetAll($model) { $this->assertEquals($model->parameterize('getAll'), array('count' => 1)); }
public function deleteById($clientId) { $clientData = UbirimiContainer::get()['repository']->get(UbirimiClient::class)->getById($clientId); $query = "SET FOREIGN_KEY_CHECKS = 0;"; UbirimiContainer::get()['db.connection']->query($query); // delete Yongo Product data $projects = UbirimiContainer::get()['repository']->get(UbirimiClient::class)->getProjects($clientId); while ($projects && ($project = $projects->fetch_array(MYSQLI_ASSOC))) { UbirimiContainer::get()['repository']->get(YongoProject::class)->deleteById($project['id']); } $workflows = UbirimiContainer::get()['repository']->get(Workflow::class)->getByClientId($clientId); while ($workflows && ($workflow = $workflows->fetch_array(MYSQLI_ASSOC))) { UbirimiContainer::get()['repository']->get(Workflow::class)->deleteById($workflow['id']); } UbirimiContainer::get()['repository']->get(NotificationScheme::class)->deleteByClientId($clientId); $screens = UbirimiContainer::get()['repository']->get(Screen::class)->getByClientId($clientId); while ($screens && ($screen = $screens->fetch_array(MYSQLI_ASSOC))) { UbirimiContainer::get()['repository']->get(Screen::class)->deleteById($screen['id']); } UbirimiContainer::get()['repository']->get(NotificationScheme::class)->deleteByClientId($clientId); UbirimiContainer::get()['repository']->get(UbirimiClient::class)->deleteYongoIssueTypes($clientId); UbirimiContainer::get()['repository']->get(UbirimiClient::class)->deleteYongoIssueStatuses($clientId); UbirimiContainer::get()['repository']->get(UbirimiClient::class)->deleteYongoIssueResolutions($clientId); UbirimiContainer::get()['repository']->get(UbirimiClient::class)->deleteYongoIssuePriorities($clientId); UbirimiContainer::get()['repository']->get(Field::class)->deleteByClientId($clientId); UbirimiContainer::get()['repository']->get(FieldConfiguration::class)->deleteByClientId($clientId); UbirimiContainer::get()['repository']->get(FieldConfigurationScheme::class)->deleteByClientId($clientId); UbirimiContainer::get()['repository']->get(NotificationScheme::class)->deleteByClientId($clientId); UbirimiContainer::get()['repository']->get(NotificationScheme::class)->deleteByClientId($clientId); UbirimiContainer::get()['repository']->get(IssueTypeScheme::class)->deleteByClientId($clientId); UbirimiContainer::get()['repository']->get(IssueTypeScreenScheme::class)->deleteByClientId($clientId); // delete issue security schemes $issueSecuritySchemes = UbirimiContainer::get()['repository']->get(IssueSecurityScheme::class)->getByClientId($clientId); while ($issueSecuritySchemes && ($issueSecurityScheme = $issueSecuritySchemes->fetch_array(MYSQLI_ASSOC))) { UbirimiContainer::get()['repository']->get(IssueSecurityScheme::class)->deleteById($issueSecurityScheme['id']); } $users = UbirimiContainer::get()['repository']->get(UbirimiClient::class)->getUsers($clientId); if ($users) { $userIdsArray = array(); while ($user = $users->fetch_array(MYSQLI_ASSOC)) { $userIdsArray[] = $user['id']; // delete user avatars $spaceBasePath = Util::getAssetsFolder(SystemProduct::SYS_PRODUCT_GENERAL_SETTINGS, 'user_avatars'); Util::deleteDir($spaceBasePath . $user['id']); } $users_ids_string = implode($userIdsArray, ', '); $query = 'delete from general_group_data where user_id IN (' . $users_ids_string . ')'; UbirimiContainer::get()['db.connection']->query($query); $query = 'delete from permission_role_data where default_user_id IN (' . $users_ids_string . ')'; UbirimiContainer::get()['db.connection']->query($query); } UbirimiContainer::get()['repository']->get(UbirimiClient::class)->deleteGroups($clientId); $query = 'delete from permission_role where client_id = ' . $clientId; UbirimiContainer::get()['db.connection']->query($query); $query = 'delete from general_user where client_id = ' . $clientId; UbirimiContainer::get()['db.connection']->query($query); $query = 'delete from event where client_id = ' . $clientId; UbirimiContainer::get()['db.connection']->query($query); $query = 'delete from client_product where client_id = ' . $clientId; UbirimiContainer::get()['db.connection']->query($query); $query = 'delete from client_yongo_settings where client_id = ' . $clientId; UbirimiContainer::get()['db.connection']->query($query); $query = 'delete from client_documentator_settings where client_id = ' . $clientId; UbirimiContainer::get()['db.connection']->query($query); $query = 'delete from client_smtp_settings where client_id = ' . $clientId; UbirimiContainer::get()['db.connection']->query($query); $query = 'delete from client_settings where client_id = ' . $clientId; UbirimiContainer::get()['db.connection']->query($query); $query = 'delete from general_log where client_id = ' . $clientId; UbirimiContainer::get()['db.connection']->query($query); $query = 'delete from sys_permission_global_data where client_id = ' . $clientId; UbirimiContainer::get()['db.connection']->query($query); // delete Cheetah Product data $agileBoards = UbirimiContainer::get()['repository']->get(Board::class)->getByClientId($clientId, 'array'); if ($agileBoards) { for ($i = 0; $i < count($agileBoards); $i++) { UbirimiContainer::get()['repository']->get(Board::class)->deleteById($agileBoards[$i]['id']); } } // delete Events Product data UbirimiContainer::get()['repository']->get(UbirimiClient::class)->deleteCalendars($clientId); // delete SVN Product data UbirimiContainer::get()['repository']->get(UbirimiClient::class)->deleteSVNRepositories($clientId); // delete Documentador Product data UbirimiContainer::get()['repository']->get(UbirimiClient::class)->deleteSpaces($clientId); $query = 'delete from client where id = ' . $clientId . ' limit 1'; UbirimiContainer::get()['db.connection']->query($query); // also delete paymill information $client = new PaymillClient(); $client->setId($clientData['paymill_id']); $requestPaymill = new PaymillRequest(UbirimiContainer::get()['paymill.private_key']); $response = $requestPaymill->delete($client); $query = "SET FOREIGN_KEY_CHECKS = 1;"; UbirimiContainer::get()['db.connection']->query($query); }