Esempio n. 1
0
 /**
  * @depends testCreateAndGetOpportunityById
  */
 public function testUpdateOpportunityFromForm()
 {
     Yii::app()->user->userModel = User::getByUsername('super');
     $user = User::getByUsername('billy');
     $opportunities = Opportunity::getByName('Test Opportunity');
     $opportunity = $opportunities[0];
     $this->assertEquals($opportunity->name, 'Test Opportunity');
     $currencies = Currency::getAll();
     $postData = array('owner' => array('id' => $user->id), 'name' => 'New Name', 'amount' => array('value' => '500.54', 'currency' => array('id' => $currencies[0]->id)), 'closeDate' => '2011-01-01', 'stage' => array('value' => 'Negotiating'));
     $opportunity->setAttributes($postData);
     $this->assertTrue($opportunity->save());
     $id = $opportunity->id;
     unset($opportunity);
     $opportunity = Opportunity::getById($id);
     $this->assertEquals('New Name', $opportunity->name);
     $this->assertEquals(500.54, $opportunity->amount->value);
     $this->assertEquals(50, $opportunity->probability);
     $this->assertEquals(1, $currencies[0]->rateToBase);
     //Updating probability mapping should make changes on saving opportunity
     $metadata = OpportunitiesModule::getMetadata();
     $metadata['global']['stageToProbabilityMapping']['Negotiating'] = 60;
     OpportunitiesModule::setMetadata($metadata);
     $postData = array();
     $opportunity->setAttributes($postData);
     $this->assertTrue($opportunity->save());
     unset($opportunity);
     $opportunity = Opportunity::getById($id);
     $this->assertEquals('New Name', $opportunity->name);
     $this->assertEquals(500.54, $opportunity->amount->value);
     $this->assertEquals(60, $opportunity->probability);
     $this->assertEquals(1, $currencies[0]->rateToBase);
 }