/**
  * @dataProvider paymentMethodDataProvider
  * @param bool $expectation
  */
 public function testIsApplicable($expectation)
 {
     $quote = $this->getMockBuilder('Magento\\Quote\\Model\\Quote')->disableOriginalConstructor()->setMethods([])->getMock();
     $paymentMethod = $this->getMockBuilder('\\Magento\\Payment\\Model\\MethodInterface')->disableOriginalConstructor()->setMethods([])->getMock();
     $specification = $this->getMockBuilder('Magento\\Payment\\Model\\Checks\\SpecificationInterface')->disableOriginalConstructor()->setMethods([])->getMock();
     $specification->expects($this->once())->method('isApplicable')->with($paymentMethod, $quote)->will($this->returnValue($expectation));
     $model = new Composite([$specification]);
     $this->assertEquals($expectation, $model->isApplicable($paymentMethod, $quote));
 }
示例#2
0
 /**
  * {@inheritdoc}
  */
 public function isApplicable(\Magento\Payment\Model\MethodInterface $paymentMethod, \Magento\Quote\Model\Quote $quote)
 {
     $pluginInfo = $this->pluginList->getNext($this->subjectType, 'isApplicable');
     if (!$pluginInfo) {
         return parent::isApplicable($paymentMethod, $quote);
     } else {
         return $this->___callPlugins('isApplicable', func_get_args(), $pluginInfo);
     }
 }