/** * @depends testGetAccountAccountAffiliation */ public function testDeleteAccountAccountAffiliation() { Yii::app()->user->userModel = User::getByUsername('super'); $authenticationData = $this->login(); $headers = array('Accept: application/json', 'ZURMO_SESSION_ID: ' . $authenticationData['sessionId'], 'ZURMO_TOKEN: ' . $authenticationData['token'], 'ZURMO_API_REQUEST_TYPE: REST'); $affiliations = AccountAccountAffiliation::getAll(); $this->assertEquals(2, count($affiliations)); $response = $this->createApiCallWithRelativeUrl('delete/' . $affiliations[0]->id, 'DELETE', $headers); $response = json_decode($response, true); $this->assertEquals(ApiResponse::STATUS_SUCCESS, $response['status']); $response = $this->createApiCallWithRelativeUrl('read/' . $affiliations[0]->id, 'GET', $headers); $response = json_decode($response, true); $this->assertEquals(ApiResponse::STATUS_FAILURE, $response['status']); $this->assertEquals('The ID specified was invalid.', $response['message']); $affiliations = AccountAccountAffiliation::getAll(); $this->assertEquals(1, count($affiliations)); }
public function testGetSetAndDelete() { $account = AccountTestHelper::createAccountByNameForOwner('firstAccount', Yii::app()->user->userModel); $account2 = AccountTestHelper::createAccountByNameForOwner('secondAccount', Yii::app()->user->userModel); $this->assertEquals(0, count(AccountAccountAffiliation::getAll())); $accountAccountAffiliation = new AccountAccountAffiliation(); $accountAccountAffiliation->primaryAccount = $account; $accountAccountAffiliation->secondaryAccount = $account2; $this->assertTrue($accountAccountAffiliation->save()); $accountAccountAffiliationId = $accountAccountAffiliation->id; $accountAccountAffiliation->forget(); $accountAccountAffiliation = AccountAccountAffiliation::getById($accountAccountAffiliationId); $this->assertTrue($accountAccountAffiliation->primaryAccount->isSame($account)); $this->assertTrue($accountAccountAffiliation->secondaryAccount->isSame($account2)); $this->assertEquals(1, count(AccountAccountAffiliation::getAll())); $accountAccountAffiliation->delete(); $this->assertEquals(0, count(AccountAccountAffiliation::getAll())); }
public function testSimpleUserImportWhereAllRowsSucceed() { Yii::app()->user->userModel = User::getByUsername('super'); $account = AccountTestHelper::createAccountByNameForOwner('Account', Yii::app()->user->userModel); $account2 = AccountTestHelper::createAccountByNameForOwner('Account2', Yii::app()->user->userModel); $accountAccountAffiliations = AccountAccountAffiliation::getAll(); $this->assertEquals(0, count($accountAccountAffiliations)); $import = new Import(); $serializedData['importRulesType'] = 'AccountAccountAffiliations'; $serializedData['firstRowIsHeaderRow'] = true; $import->serializedData = serialize($serializedData); $this->assertTrue($import->save()); ImportTestHelper::createTempTableByFileNameAndTableName('importTest.csv', $import->getTempTableName(), true, Yii::getPathOfAlias('application.modules.accountAccountAffiliations.tests.unit.files')); //update the ids of the account column to match the parent account. ZurmoRedBean::exec("update " . $import->getTempTableName() . " set column_0 = " . $account->id . " where id != 1 limit 4"); ZurmoRedBean::exec("update " . $import->getTempTableName() . " set column_1 = " . $account2->id . " where id != 1 limit 4"); $this->assertEquals(4, ImportDatabaseUtil::getCount($import->getTempTableName())); // includes header rows. $mappingData = array('column_0' => ImportMappingUtil::makeHasOneColumnMappingData('primaryAccount'), 'column_1' => ImportMappingUtil::makeHasOneColumnMappingData('secondaryAccount')); $importRules = ImportRulesUtil::makeImportRulesByType('AccountAccountAffiliations'); $page = 0; $config = array('pagination' => array('pageSize' => 50)); //This way all rows are processed. $dataProvider = new ImportDataProvider($import->getTempTableName(), true, $config); $dataProvider->getPagination()->setCurrentPage($page); $importResultsUtil = new ImportResultsUtil($import); $messageLogger = new ImportMessageLogger(); ImportUtil::importByDataProvider($dataProvider, $importRules, $mappingData, $importResultsUtil, new ExplicitReadWriteModelPermissions(), $messageLogger); $importResultsUtil->processStatusAndMessagesForEachRow(); //Confirm that 3 models where created. $accountAccountAffiliations = AccountAccountAffiliation::getAll(); $this->assertEquals(3, count($accountAccountAffiliations)); $this->assertTrue($accountAccountAffiliations[0]->primaryAccount->isSame($account)); $this->assertTrue($accountAccountAffiliations[0]->secondaryAccount->isSame($account2)); $this->assertTrue($accountAccountAffiliations[1]->primaryAccount->isSame($account)); $this->assertTrue($accountAccountAffiliations[1]->secondaryAccount->isSame($account2)); $this->assertTrue($accountAccountAffiliations[2]->primaryAccount->isSame($account)); $this->assertTrue($accountAccountAffiliations[2]->secondaryAccount->isSame($account2)); //Confirm 3 rows were processed as 'created'. $this->assertEquals(3, ImportDatabaseUtil::getCount($import->getTempTableName(), "status = " . ImportRowDataResultsUtil::CREATED)); //Confirm that 0 rows were processed as 'updated'. $this->assertEquals(0, ImportDatabaseUtil::getCount($import->getTempTableName(), "status = " . ImportRowDataResultsUtil::UPDATED)); }
public function testSuperUserDeleteAction() { $super = $this->logoutCurrentUserLoginNewUserAndGetByUsername('super'); $accountAccountAffiliations = AccountAccountAffiliation::getAll(); $this->assertEquals(1, count($accountAccountAffiliations)); //Delete an AccountAccountAffiliation model. $this->setGetArray(array('id' => $accountAccountAffiliations[0]->id)); $this->resetPostArray(); $this->runControllerWithNoExceptionsAndGetContent('accountAccountAffiliations/default/delete', true); $accountAccountAffiliations = AccountAccountAffiliation::getAll(); $this->assertEquals(0, count($accountAccountAffiliations)); }
/** * @depends testSuperUserCustomFieldsWalkthroughForAccountAccountAffiliationsModule */ public function testLayoutsLoadOkAfterCustomFieldsPlacedForAccountAccountAffiliationsModule() { $super = $this->logoutCurrentUserLoginNewUserAndGetByUsername('super'); //Load create, edit views. $this->runControllerWithNoExceptionsAndGetContent('accountAccountAffiliations/default/create'); $accountAccountAffiliations = AccountAccountAffiliation::getAll(); $this->assertEquals(0, count($accountAccountAffiliations)); //Create a new AccountAccountAffiliation from a related account. $this->setGetArray(array('relationAttributeName' => 'primaryAccount', 'relationModelId' => self::$account2->id, 'relationModuleId' => 'accounts', 'redirectUrl' => 'someRedirect')); $this->setPostArray(array('AccountAccountAffiliation' => array('secondaryAccount' => array('id' => self::$account->id)))); $this->runControllerWithRedirectExceptionAndGetContent('accountAccountAffiliations/default/createFromRelation'); $accountAccountAffiliations = AccountAccountAffiliation::getAll(); $this->assertEquals(1, count($accountAccountAffiliations)); $this->setGetArray(array('id' => $accountAccountAffiliations[0]->id)); $this->runControllerWithRedirectExceptionAndGetContent('accountAccountAffiliations/default/edit'); }