public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     Yii::app()->user->userModel = SecurityTestHelper::createSuperAdmin();
     SecurityTestHelper::createUsers();
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     SecurityTestHelper::createSuperAdmin();
     SecurityTestHelper::createUsers();
     SecurityTestHelper::createGroups();
     SecurityTestHelper::createRoles();
     RedBeanModel::forgetAll();
     //do the rebuild to ensure the tables get created properly.
     ReadPermissionsOptimizationUtil::rebuild();
     //Manually build the test model munge tables.
     ReadPermissionsOptimizationUtil::recreateTable(ReadPermissionsOptimizationUtil::getMungeTableName('OwnedSecurableTestItem'));
     ReadPermissionsOptimizationUtil::recreateTable(ReadPermissionsOptimizationUtil::getMungeTableName('OwnedSecurableTestItem2'));
     $benny = User::getByUsername('benny');
     $model = new OwnedSecurableTestItem();
     $model->member = 'test';
     assert($model->save());
     // Not Coding Standard
     $model = new OwnedSecurableTestItem();
     $model->member = 'test2';
     assert($model->save());
     // Not Coding Standard
     $model = new OwnedSecurableTestItem();
     $model->member = 'test3';
     $model->owner = $benny;
     assert($model->save());
     // Not Coding Standard
     assert(OwnedSecurableTestItem::getCount() == 3);
     // Not Coding Standard
     $model = new OwnedSecurableTestItem2();
     $model->member = 'test5';
     assert($model->save());
     // Not Coding Standard
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     $super = SecurityTestHelper::createSuperAdmin();
     Yii::app()->user->userModel = User::getByUsername('super');
     $headquarters = AccountTestHelper::createAccountByNameForOwner('Headquarters', $super);
     $division1 = AccountTestHelper::createAccountByNameForOwner('Division1', $super);
     $division2 = AccountTestHelper::createAccountByNameForOwner('Division2', $super);
     $ceo = ContactTestHelper::createContactWithAccountByNameForOwner('ceo', $super, $headquarters);
     $div1President = ContactTestHelper::createContactWithAccountByNameForOwner('div1 President', $super, $division1);
     $div2President = ContactTestHelper::createContactWithAccountByNameForOwner('div2 President', $super, $division2);
     $opportunity = OpportunityTestHelper::createOpportunityWithAccountByNameForOwner('big opp', $super, $headquarters);
     $opportunityDiv1 = OpportunityTestHelper::createOpportunityWithAccountByNameForOwner('div1 small opp', $super, $division1);
     $opportunityDiv2 = OpportunityTestHelper::createOpportunityWithAccountByNameForOwner('div2 small opp', $super, $division2);
     //attach divisions to headquarters
     $headquarters->accounts->add($division1);
     $headquarters->accounts->add($division2);
     assert($headquarters->save());
     // Not Coding Standard
     //attach opportunities to contacts
     $opportunity->contacts->add($ceo);
     assert($opportunity->save());
     // Not Coding Standard
     //Forget models to ensure relations are known on the next retrieval
     $headquarters->forget();
     $division1->forget();
     $division2->forget();
     $ceo->forget();
 }
예제 #4
0
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     SecurityTestHelper::createSuperAdmin();
     UserTestHelper::createBasicUser('billy');
     UserTestHelper::createBasicUser('sally');
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     SecurityTestHelper::createSuperAdmin();
     Yii::app()->user->userModel = User::getByUsername('super');
     $billy = UserTestHelper::createBasicUser('billy');
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     SecurityTestHelper::createSuperAdmin();
     Yii::app()->user->userModel = User::getByUsername('super');
     $loaded = ContactsModule::loadStartingData();
     assert('$loaded');
     // Not Coding Standard
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     SecurityTestHelper::createSuperAdmin();
     //do the rebuild to ensure the tables get created properly.
     AllPermissionsOptimizationUtil::rebuild();
     //Manually build the test model munge tables.
     ReadPermissionsOptimizationUtil::recreateTable(ReadPermissionsOptimizationUtil::getMungeTableName('OwnedSecurableTestItem'));
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     SecurityTestHelper::createSuperAdmin();
     Yii::app()->user->userModel = User::getByUsername('super');
     SecurityTestHelper::createUsers();
     SecurityTestHelper::createGroups();
     SecurityTestHelper::createAccounts();
     AllPermissionsOptimizationUtil::rebuild();
 }
예제 #9
0
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     SecurityTestHelper::createSuperAdmin();
     SecurityTestHelper::createUsers();
     SecurityTestHelper::createGroups();
     SecurityTestHelper::createRoles();
     //Forget the cache, otherwise user/role/group information is not properly reflected in the cache.
     RedBeanModel::forgetAll();
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     SecurityTestHelper::createSuperAdmin();
     $billy = UserTestHelper::createBasicUser('billy');
     $group = Group::getByName('Super Administrators');
     $group->users->add($billy);
     $saved = $group->save();
     assert($saved);
     // Not Coding Standard
     UserTestHelper::createBasicUser('sally');
 }
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::createActualPermissionsCacheTable();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     SecurityTestHelper::createSuperAdmin();
     $super = User::getByUsername('super');
     Yii::app()->user->userModel = $super;
     StarredUtil::createStarredTables();
     $account = new Account();
     $account->owner = $super;
     $account->name = 'Test Account0';
     $account->officePhone = '1234567890';
     $account->save();
     StarredUtil::markModelAsStarred($account);
     $account = new Account();
     $account->owner = $super;
     $account->name = 'Test Account1';
     $account->officePhone = '1234567891';
     $account->save();
 }
예제 #12
0
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::createActualPermissionsCacheTable();
     ZurmoDatabaseCompatibilityUtil::createNamedSecurableActualPermissionsCacheTable();
     ZurmoDatabaseCompatibilityUtil::createActualRightsCacheTable();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     PermissionsCache::forgetAll();
     AllPermissionsOptimizationCache::forgetAll();
     RightsCache::forgetAll();
     PoliciesCache::forgetAll();
     Currency::resetCaches();
     //php only cache
     Permission::resetCaches();
     //php only cache
     self::$activitiesObserver = new ActivitiesObserver();
     self::$activitiesObserver->init();
     //runs init();
     self::$conversationsObserver = new ConversationsObserver();
     self::$conversationsObserver->init();
     //runs init();
     self::$emailMessagesObserver = new EmailMessagesObserver();
     self::$emailMessagesObserver->init();
     //runs init();
     self::$contactLatestActivityDateTimeObserver = new ContactLatestActivityDateTimeObserver();
     self::$contactLatestActivityDateTimeObserver->init();
     //runs init();
     self::$accountLatestActivityDateTimeObserver = new AccountLatestActivityDateTimeObserver();
     self::$accountLatestActivityDateTimeObserver->init();
     //runs init();
     self::$accountContactAffiliationObserver = new AccountContactAffiliationObserver();
     self::$accountContactAffiliationObserver->init();
     //runs init();
     Yii::app()->gameHelper;
     Yii::app()->gamificationObserver;
     //runs init();
     Yii::app()->gameHelper->resetDeferredPointTypesAndValuesByUserIdToAdd();
     Yii::app()->emailHelper->sendEmailThroughTransport = false;
     Yii::app()->jobQueue->deleteAll();
 }
예제 #13
0
 public static function setUpBeforeClass()
 {
     parent::setUpBeforeClass();
     ZurmoDatabaseCompatibilityUtil::createActualPermissionsCacheTable();
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     PermissionsCache::forgetAll();
     RightsCache::forgetAll();
     PoliciesCache::forgetAll();
     Currency::resetCaches();
     //php only cache
     $activitiesObserver = new ActivitiesObserver();
     $activitiesObserver->init();
     //runs init();
     $conversationsObserver = new ConversationsObserver();
     $conversationsObserver->init();
     //runs init();
     Yii::app()->gameHelper;
     Yii::app()->gamificationObserver;
     //runs init();
     Yii::app()->gameHelper->resetDeferredPointTypesAndValuesByUserIdToAdd();
     Yii::app()->emailHelper->sendEmailThroughTransport = false;
 }
 /**
  * @depends testSaveAndLoadGroup
  */
 public function testGroupsContainingGroupsAndContains()
 {
     ZurmoDatabaseCompatibilityUtil::dropStoredFunctionsAndProcedures();
     $u = array();
     for ($i = 0; $i < 5; $i++) {
         $u[$i] = User::getByUsername("uuuuu{$i}");
     }
     $a = Group::getByName('AAA');
     $b = Group::getByName('BBB');
     $c = new Group();
     $c->name = 'CCC';
     $this->assertTrue($c->save());
     $this->assertEquals(0, $c->users->count());
     $this->assertEquals(0, $c->groups->count());
     $d = new Group();
     $d->name = 'DDD';
     $this->assertTrue($d->save());
     $this->assertEquals(0, $d->users->count());
     $this->assertEquals(0, $d->groups->count());
     $b->users->add($u[1]);
     $b->users->add($u[2]);
     $b->groups->add($c);
     $b->groups->add($d);
     $this->assertTrue($b->save());
     $c->users->add($u[3]);
     $this->assertTrue($c->save());
     $d->users->add($u[4]);
     $this->assertTrue($d->save());
     unset($a);
     unset($b);
     unset($c);
     unset($d);
     RedBeanModel::forgetAll();
     $a = Group::getByName('AAA');
     $b = Group::getByName('BBB');
     $c = Group::getByName('CCC');
     $d = Group::getByName('DDD');
     $this->assertEquals(1, $a->users->count());
     $this->assertEquals(2, $b->users->count());
     $this->assertEquals(1, $c->users->count());
     $this->assertEquals(1, $d->users->count());
     $this->assertEquals(1, $a->groups->count());
     $this->assertEquals(2, $b->groups->count());
     $this->assertEquals(0, $c->groups->count());
     $this->assertEquals(0, $d->groups->count());
     $this->assertTrue($a->contains($u[0]));
     $this->assertTrue($a->contains($u[1]));
     $this->assertTrue($a->contains($u[2]));
     $this->assertTrue($a->contains($u[3]));
     $this->assertTrue($a->contains($u[4]));
     $this->assertTrue($a->contains($b));
     $this->assertTrue($a->contains($c));
     $this->assertTrue($a->contains($d));
     $this->assertTrue(self::fastContainsUserByGroupName('AAA', $u[0]->id));
     $this->assertTrue(self::fastContainsUserByGroupName('AAA', $u[1]->id));
     $this->assertTrue(self::fastContainsUserByGroupName('AAA', $u[2]->id));
     $this->assertTrue(self::fastContainsUserByGroupName('AAA', $u[3]->id));
     $this->assertTrue(self::fastContainsUserByGroupName('AAA', $u[4]->id));
     $this->assertTrue($b->contains($u[1]));
     $this->assertTrue($b->contains($u[2]));
     $this->assertTrue($b->contains($u[3]));
     $this->assertTrue($b->contains($u[4]));
     $this->assertTrue($b->contains($c));
     $this->assertTrue($b->contains($d));
     $this->assertTrue(self::fastContainsUserByGroupName('BBB', $u[1]->id));
     $this->assertTrue(self::fastContainsUserByGroupName('BBB', $u[2]->id));
     $this->assertTrue(self::fastContainsUserByGroupName('BBB', $u[3]->id));
     $this->assertTrue(self::fastContainsUserByGroupName('BBB', $u[4]->id));
     $this->assertTrue($c->contains($u[3]));
     $this->assertTrue($d->contains($u[4]));
     $this->assertTrue(self::fastContainsUserByGroupName('CCC', $u[3]->id));
     $this->assertTrue(self::fastContainsUserByGroupName('DDD', $u[4]->id));
     $this->assertFalse($b->contains($u[0]));
     $this->assertFalse(self::fastContainsUserByGroupName('BBB', $u[0]->id));
     $this->assertFalse($c->contains($u[0]));
     $this->assertFalse($c->contains($u[1]));
     $this->assertFalse($c->contains($u[2]));
     $this->assertFalse($c->contains($u[4]));
     $this->assertFalse(self::fastContainsUserByGroupName('CCC', $u[0]->id));
     $this->assertFalse(self::fastContainsUserByGroupName('CCC', $u[1]->id));
     $this->assertFalse(self::fastContainsUserByGroupName('CCC', $u[2]->id));
     $this->assertFalse(self::fastContainsUserByGroupName('CCC', $u[4]->id));
     $this->assertFalse($d->contains($u[0]));
     $this->assertFalse($d->contains($u[1]));
     $this->assertFalse($d->contains($u[2]));
     $this->assertFalse($d->contains($u[3]));
     $this->assertFalse(self::fastContainsUserByGroupName('DDD', $u[0]->id));
     $this->assertFalse(self::fastContainsUserByGroupName('DDD', $u[1]->id));
     $this->assertFalse(self::fastContainsUserByGroupName('DDD', $u[2]->id));
     $this->assertFalse(self::fastContainsUserByGroupName('DDD', $u[3]->id));
     $this->assertFalse($b->contains($a));
     $this->assertFalse($c->contains($a));
     $this->assertFalse($d->contains($a));
     $this->assertFalse($c->contains($a));
     $this->assertFalse($c->contains($b));
     $this->assertFalse($d->contains($a));
     $this->assertFalse($d->contains($b));
     $a->forget();
     $b->forget();
     $c->forget();
     $d->forget();
     unset($a);
     unset($b);
     unset($c);
     unset($d);
 }