public function testGetExportValue()
 {
     $super = User::getByUsername('super');
     Yii::app()->user->userModel = $super;
     $currencies = Currency::getAll();
     $currencyValue = new CurrencyValue();
     $currencyValue->value = 100;
     $currencyValue->currency = $currencies[0];
     $this->assertEquals('USD', $currencyValue->currency->code);
     $data = array();
     $model = new ExportTestModelItem();
     $model->currencyValue = $currencyValue;
     $model->lastName = "Smith";
     $model->string = "Some Test String";
     // We have to save model, to get correct currencyValue id.
     $this->assertTrue($model->save());
     $adapter = new CurrencyValueRedBeanModelAttributeValueToExportValueAdapter($model, 'currencyValue');
     $adapter->resolveData($data);
     $compareData = array($currencyValue->value, $currencyValue->currency->code);
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('currencyValue'), $model->getAttributeLabel('currencyValue') . " " . Zurmo::t('ZurmoModule', 'Currency'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new CurrencyValueRedBeanModelAttributeValueToExportValueAdapter($model, 'currencyValue');
     $adapter->resolveData($data);
     $compareData = array('', '');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('currencyValue'), $model->getAttributeLabel('currencyValue') . " " . Zurmo::t('ZurmoModule', 'Currency'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $currencies = Currency::getAll();
     $this->assertTrue(count($currencies) > 0);
     $data = array();
     $model = new ExportTestModelItem();
     $model->currency = $currencies[0];
     $adapter = new CurrencyRedBeanModelAttributeValueToExportValueAdapter($model, 'currency');
     $adapter->resolveData($data);
     $compareData = array($currencies[0]->code);
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('currency'));
     $this->assertEquals($compareData, $data);
     // Test when model doesn't contain currency data.
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new CurrencyRedBeanModelAttributeValueToExportValueAdapter($model, 'currency');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('currency'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $values = array('Test1', 'Test2', 'Test3', 'Sample', 'Demo');
     $customFieldData = CustomFieldData::getByName('ExportTestDropDown');
     $customFieldData->serializedData = serialize($values);
     $saved = $customFieldData->save();
     $this->assertTrue($saved);
     $data = array();
     $model = new ExportTestModelItem();
     $model->dropDown->value = $values[1];
     $model->lastName = "Smith";
     $model->string = "Some Test String";
     // We have to save model, to get correct currencyValue id.
     $this->assertTrue($model->save());
     $adapter = new DropDownRedBeanModelAttributeValueToExportValueAdapter($model, 'dropDown');
     $adapter->resolveData($data);
     $compareData = array('Test2');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('dropDown'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new DropDownRedBeanModelAttributeValueToExportValueAdapter($model, 'dropDown');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('dropDown'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $super = User::getByUsername('super');
     Yii::app()->user->userModel = $super;
     $data = array();
     $model = new ExportTestModelItem();
     $model->lastName = "Smith";
     $model->string = "Some Test String";
     $model->user = $super;
     $this->assertTrue($model->save());
     $adapter = new UserRedBeanModelAttributeValueToExportValueAdapter($model, 'user');
     $adapter->resolveData($data);
     $compareData = array('Clark Kent');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('user'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new UserRedBeanModelAttributeValueToExportValueAdapter($model, 'user');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('user'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $data = array();
     $model = new ExportTestModelItem();
     $model->lastName = 'testLastName';
     $model->string = 'testString';
     $model->primaryAddress->city = 'testCity';
     $model->primaryAddress->country = 'testCountry';
     $model->primaryAddress->postalCode = 'testPostalCode';
     $model->primaryAddress->street1 = 'testStreet1';
     $model->primaryAddress->street2 = 'testStreet2';
     $model->primaryAddress->state = 'testState';
     $this->assertTrue($model->save());
     $adapter = new AddressRedBeanModelAttributeValueToExportValueAdapter($model, 'primaryAddress');
     $adapter->resolveData($data);
     $compareData = array('testCity', 'testCountry', 'testPostalCode', 'testStreet1', 'testStreet2', 'testState');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ZurmoModule', 'City'), $model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ZurmoModule', 'Country'), $model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ZurmoModule', 'Postal Code'), $model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ZurmoModule', 'Street 1'), $model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ZurmoModule', 'Street 2'), $model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ExportModule', 'State'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new AddressRedBeanModelAttributeValueToExportValueAdapter($model, 'primaryAddress');
     $adapter->resolveData($data);
     $compareData = array(null, null, null, null, null, null);
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ZurmoModule', 'City'), $model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ZurmoModule', 'Country'), $model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ZurmoModule', 'Postal Code'), $model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ZurmoModule', 'Street 1'), $model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ZurmoModule', 'Street 2'), $model->getAttributeLabel('primaryAddress') . ' - ' . Zurmo::t('ExportModule', 'State'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $data = array();
     $model = new ExportTestModelItem();
     $model->email = '*****@*****.**';
     $adapter = new EmailRedBeanModelAttributeValueToExportValueAdapter($model, 'email');
     $adapter->resolveData($data);
     $compareData = array('*****@*****.**');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('email'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new EmailRedBeanModelAttributeValueToExportValueAdapter($model, 'email');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('email'));
     $this->assertEquals($compareData, $data);
     $model = new ExportTestModelItem();
     $model->lastName = 'testLastName';
     $model->string = 'testString';
     $model->secondaryEmail->emailAddress = '*****@*****.**';
     $model->secondaryEmail->isInvalid = false;
     $model->secondaryEmail->optOut = true;
     $this->assertTrue($model->save());
     $data = array();
     $adapter = new EmailAddressInformationRedBeanModelAttributeValueToExportValueAdapter($model, 'secondaryEmail');
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('secondaryEmail') . ' - ' . Zurmo::t('ZurmoModule', 'Email Address'), $model->getAttributeLabel('secondaryEmail') . ' - ' . Zurmo::t('ZurmoModule', 'Is Invalid'), $model->getAttributeLabel('secondaryEmail') . ' - ' . Zurmo::t('ZurmoModule', 'Opt Out'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveData($data);
     $compareData = array('*****@*****.**', false, true);
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $data = array();
     $model = new ExportTestModelItem();
     $model->firstName = 'Sam Smith';
     $adapter = new TextRedBeanModelAttributeValueToExportValueAdapter($model, 'firstName');
     $adapter->resolveData($data);
     $compareData = array('Sam Smith');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('firstName'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model->firstName = '';
     $adapter = new TextRedBeanModelAttributeValueToExportValueAdapter($model, 'firstName');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('firstName'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $tagCloudValues = array('Tag 1', 'Tag 2', 'Tag 3');
     $customFieldData = CustomFieldData::getByName('ExportTestTagCloud');
     $customFieldData->serializedData = serialize($tagCloudValues);
     $saved = $customFieldData->save();
     $this->assertTrue($saved);
     $data = array();
     $model = new ExportTestModelItem();
     $model->lastName = "Smith";
     $model->string = "Some Test String";
     $customFieldValue = new CustomFieldValue();
     $customFieldValue->value = 'Tag 2';
     $model->tagCloud->values->add($customFieldValue);
     $customFieldValue = new CustomFieldValue();
     $customFieldValue->value = 'Tag 3';
     $model->tagCloud->values->add($customFieldValue);
     $this->assertTrue($model->save());
     $adapter = new TagCloudRedBeanModelAttributeValueToExportValueAdapter($model, 'tagCloud');
     $adapter->resolveData($data);
     $compareData = array('Tag 2,Tag 3');
     // Not Coding Standard
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('tagCloud'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new TagCloudRedBeanModelAttributeValueToExportValueAdapter($model, 'tagCloud');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('tagCloud'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $multiSelectValues = array('Multi 1', 'Multi 2', 'Multi 3');
     $customFieldData = CustomFieldData::getByName('ExportTestMultiDropDown');
     $customFieldData->serializedData = serialize($multiSelectValues);
     $saved = $customFieldData->save();
     $this->assertTrue($saved);
     $data = array();
     $model = new ExportTestModelItem();
     $model->lastName = "Smith";
     $model->string = "Some Test String";
     $customFieldValue = new CustomFieldValue();
     $customFieldValue->value = 'Multi 1';
     $model->multiDropDown->values->add($customFieldValue);
     $customFieldValue = new CustomFieldValue();
     $customFieldValue->value = 'Multi 3';
     $model->multiDropDown->values->add($customFieldValue);
     $this->assertTrue($model->save());
     $adapter = new MultiSelectDropDownRedBeanModelAttributeValueToExportValueAdapter($model, 'multiDropDown');
     $adapter->resolveData($data);
     $compareData = array('Multi 1,Multi 3');
     // Not Coding Standard
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('multiDropDown'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new MultiSelectDropDownRedBeanModelAttributeValueToExportValueAdapter($model, 'multiDropDown');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('multiDropDown'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $data = array();
     $model = new ExportTestModelItem();
     $model->phone = '5345435353';
     $adapter = new PhoneRedBeanModelAttributeValueToExportValueAdapter($model, 'phone');
     $adapter->resolveData($data);
     $compareData = array('5345435353');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('phone'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new PhoneRedBeanModelAttributeValueToExportValueAdapter($model, 'phone');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('phone'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $data = array();
     $model = new ExportTestModelItem();
     $model->dateTime = '2002-04-03 02:00:43';
     $adapter = new DateTimeRedBeanModelAttributeValueToExportValueAdapter($model, 'dateTime');
     $adapter->resolveData($data);
     $compareData = array('2002-04-03 02:00:43');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('dateTime'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new DateTimeRedBeanModelAttributeValueToExportValueAdapter($model, 'dateTime');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('dateTime'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $data = array();
     $model = new ExportTestModelItem();
     $model->float = '1.32';
     $adapter = new DecimalRedBeanModelAttributeValueToExportValueAdapter($model, 'float');
     $adapter->resolveData($data);
     $compareData = array(1.32);
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('float'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new DecimalRedBeanModelAttributeValueToExportValueAdapter($model, 'float');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('float'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $data = array();
     $model = new ExportTestModelItem();
     $model->integer = 10;
     $adapter = new IntegerRedBeanModelAttributeValueToExportValueAdapter($model, 'integer');
     $adapter->resolveData($data);
     $compareData = array(10);
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('integer'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new IntegerRedBeanModelAttributeValueToExportValueAdapter($model, 'integer');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('integer'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $data = array();
     $model = new ExportTestModelItem();
     $model->textArea = 'Sample Text';
     $adapter = new TextAreaRedBeanModelAttributeValueToExportValueAdapter($model, 'textArea');
     $adapter->resolveData($data);
     $compareData = array('Sample Text');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('textArea'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new TextAreaRedBeanModelAttributeValueToExportValueAdapter($model, 'textArea');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('textArea'));
     $this->assertEquals($compareData, $data);
 }
 public function testGetExportValue()
 {
     $data = array();
     $model = new ExportTestModelItem();
     $model->url = 'http://www.example.com';
     $adapter = new UrlRedBeanModelAttributeValueToExportValueAdapter($model, 'url');
     $adapter->resolveData($data);
     $compareData = array('http://www.example.com');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('url'));
     $this->assertEquals($compareData, $data);
     $data = array();
     $model = new ExportTestModelItem();
     $adapter = new UrlRedBeanModelAttributeValueToExportValueAdapter($model, 'url');
     $adapter->resolveData($data);
     $compareData = array('');
     $this->assertEquals($compareData, $data);
     $data = array();
     $adapter->resolveHeaderData($data);
     $compareData = array($model->getAttributeLabel('url'));
     $this->assertEquals($compareData, $data);
 }