public function test_aroundAddFieldToFilter_process() { /** === Test Data === */ $ATTR = \Praxigento\Warehouse\Repo\Modifier\Product\Grid::FLD_QTY; $COND = 'condition'; /** === Setup Mocks === */ $mProceed = function () { }; // $result = $subject; $mResult = $this->mSubject; // $conn = $result->getConnection(); $mConn = $this->_mockConn(); $mResult->shouldReceive('getConnection')->once()->andReturn($mConn); // $query = $conn->prepareSqlCondition($alias, $condition); $mQuery = 'some sql query'; $mConn->shouldReceive('prepareSqlCondition')->once()->andReturn($mQuery); // $select = $result->getSelect(); $mSelect = $this->_mockDbSelect(); $mResult->shouldReceive('getSelect')->once()->andReturn($mSelect); // $select->where($query); $mSelect->shouldReceive('where')->once(); /** === Call and asserts === */ $res = $this->obj->aroundAddFieldToFilter($this->mSubject, $mProceed, $ATTR, $COND); $this->assertEquals($mResult, $res); }
public function test_aroundAddFieldToFilter_notPv() { /** === Test Data === */ $ATTR = 'uiAlias'; $CONDITION = 'condition'; $RESULT = 'processing result'; /** === Setup Mocks === */ $mProceed = function ($fieldIn, $dirIn) use($ATTR, $CONDITION, $RESULT) { $this->assertEquals($ATTR, $fieldIn); $this->assertEquals($CONDITION, $dirIn); return $RESULT; }; /** === Call and asserts === */ $res = $this->obj->aroundAddFieldToFilter($this->mSubject, $mProceed, $ATTR, $CONDITION); $this->assertEquals($RESULT, $res); }