function ensureCompatible($slaveVehicles, $masterVehicle) { $masterVehicle = new VF_Tire_Vehicle($masterVehicle); foreach ($slaveVehicles as $slaveVehicle) { $slaveVehicle = new VF_Tire_Vehicle($slaveVehicle); if ($masterVehicle->tireSize() != $slaveVehicle->tireSize()) { throw new Elite_Vaf_Model_Merge_Exception_IncompatibleVehicleAttribute('tire sizes dont match'); } } }
function testShouldDuplicateTire() { $vehicle = $this->createMMY('Honda', 'Civic', '2000'); $tireSize = VF_TireSize::create('205/55-16'); $tireVehicle = new VF_Tire_Vehicle($vehicle); $tireVehicle->save(); $tireVehicle->addTireSize($tireSize); $this->split($vehicle, 'year', array('2000', '2001')); $one = $this->vehicleFinder()->findOneByLevels(array('make' => 'Honda', 'model' => 'Civic', 'year' => '2000')); $tireVehicle1 = new VF_Tire_Vehicle($one); $two = $this->vehicleFinder()->findOneByLevels(array('make' => 'Honda', 'model' => 'Civic', 'year' => '2000')); $tireVehicle2 = new VF_Tire_Vehicle($two); $one = $tireVehicle1->tireSize(); $two = $tireVehicle2->tireSize(); $this->assertEquals($tireSize, $one[0], 'SPLIT Should copy tire size to each resultant vehicle.'); $this->assertEquals($tireSize, $two[0], 'SPLIT Should copy tire size to each resultant vehicle.'); }