예제 #1
0
 /**
  * Based on the self::$importToFormAttributeMap, create an array of elements from the
  * import wizard form.  Serialize the array and set the import serializedData attribute.
  * @param object $importWizardForm
  * @param object $import
  */
 public static function setImportSerializedDataFromForm($importWizardForm, $import)
 {
     assert('$importWizardForm instanceof ImportWizardForm');
     assert('$import instanceof Import');
     $dataToSerialize = array();
     foreach (self::$importToFormAttributeMap as $attributeName) {
         $dataToSerialize[$attributeName] = $importWizardForm->{$attributeName};
     }
     $dataToSerialize['explicitReadWriteModelPermissions'] = ExplicitReadWriteModelPermissionsUtil::makeMixedPermitablesDataByExplicitReadWriteModelPermissions($importWizardForm->explicitReadWriteModelPermissions);
     $import->serializedData = serialize($dataToSerialize);
 }
 public function testMakeMixedPermitablesDataByExplicitReadWriteModelPermissions()
 {
     Yii::app()->user->userModel = User::getByUsername('super');
     $group1 = Group::getByName('Group1');
     $group2 = Group::getByName('Group2');
     $group3 = Group::getByName('Group3');
     $explicitReadWriteModelPermissions = new ExplicitReadWriteModelPermissions();
     $this->assertEquals(0, $explicitReadWriteModelPermissions->getReadOnlyPermitablesCount());
     $this->assertEquals(0, $explicitReadWriteModelPermissions->getReadWritePermitablesCount());
     //Now add permitables
     $explicitReadWriteModelPermissions->addReadOnlyPermitable($group1);
     $explicitReadWriteModelPermissions->addReadWritePermitable($group2);
     $explicitReadWriteModelPermissions->addReadWritePermitable($group3);
     $mixedPermitablesData = ExplicitReadWriteModelPermissionsUtil::makeMixedPermitablesDataByExplicitReadWriteModelPermissions($explicitReadWriteModelPermissions);
     $compareData = array('readOnly' => array(array('Group' => $group1->id)), 'readWrite' => array(array('Group' => $group2->id), array('Group' => $group3->id)));
     $this->assertEquals($compareData, $mixedPermitablesData);
 }