Example #1
0
 /**
  * @depends testCreateStageValues
  */
 public function testVariousCurrencyValues()
 {
     $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);
     $opportunity = new Opportunity();
     $opportunity->owner = $super;
     $opportunity->name = 'test';
     $opportunity->amount = $currencyValue;
     $opportunity->closeDate = '2011-01-01';
     $opportunity->stage->value = 'Verbal';
     $this->assertEquals(0, $opportunity->probability);
     $saved = $opportunity->save();
     $this->assertTrue($saved);
     $this->assertEquals(75, $opportunity->probability);
     $opportunity1Id = $opportunity->id;
     $opportunity->forget();
     $currencyValue = new CurrencyValue();
     $currencyValue->value = 800;
     $currencyValue->currency = $currencies[0];
     $this->assertEquals('USD', $currencyValue->currency->code);
     $opportunity = new Opportunity();
     $opportunity->owner = $super;
     $opportunity->name = 'test';
     $opportunity->amount = $currencyValue;
     $opportunity->closeDate = '2011-01-01';
     $opportunity->stage->value = 'Verbal';
     $saved = $opportunity->save();
     $this->assertTrue($saved);
     $opportunity2Id = $opportunity->id;
     $opportunity->forget();
     $currencyValue->forget();
     //need to forget this to pull the accurate value from the database
     $opportunity1 = Opportunity::getById($opportunity1Id);
     $this->assertEquals(100, $opportunity1->amount->value);
     $opportunity2 = Opportunity::getById($opportunity2Id);
     $this->assertEquals(800, $opportunity2->amount->value);
     $opportunity1->delete();
     $opportunity2->delete();
 }