public function test_getForWriteOff_isPeriodData_noCalc() { /** === Test Data === */ $CALC_TYPE_ID = 1024; $FOUND_PERIOD_ID = 2048; /** === Mocks === */ $mLogger = $this->_mockLogger(); $mConn = $this->_mockConnection(); $mDba = $this->_mockDbAdapter(null, $mConn); $mToolPeriod = $this->_mockFor('Praxigento\\Core\\Tool\\IPeriod'); $mToolbox = $this->_mockToolbox(null, null, null, $mToolPeriod); $mCallRepo = $this->_mockCallRepo(); $mSubDb = $this->_mockFor('\\Praxigento\\Bonus\\Hybrid\\Lib\\Service\\Period\\Sub\\Db'); $mSubWriteOff = $this->_mockFor('\\Praxigento\\Bonus\\Hybrid\\Lib\\Service\\Period\\Sub\\BasedCalcs'); // $calcWriteOffId = $this->_subDb->getCalcIdByCode($calcWriteOffCode); $mSubDb->expects($this->once())->method('getCalcIdByCode')->willReturn($CALC_TYPE_ID); // $respWriteOffLastPeriod = $this->_subDb->getLastPeriodData($calcWriteOffId); $mRespLastPeriod = new BonusBasePeriodGetLatestResponse(); $mRespLastPeriod->markSucceed(); $mRespLastPeriod->setPeriodData([Period::ATTR_ID => $FOUND_PERIOD_ID]); $mRespLastPeriod->setCalcData(false); $mSubDb->expects($this->once())->method('getLastPeriodData')->willReturn($mRespLastPeriod); /** * Prepare request and perform call. */ /** @var $call Call */ $call = new Call($mLogger, $mDba, $mToolbox, $mCallRepo, $mSubDb, $mSubWriteOff); $req = new Request\GetForWriteOff(); $resp = $call->getForWriteOff($req); $this->assertTrue($resp->isSucceed()); }