function it_does_not_support_payment_if_none_of_registered_resolvers_supports_it(MethodsResolverInterface $firstMethodsResolver, MethodsResolverInterface $secondMethodsResolver, PrioritizedServiceRegistryInterface $resolversRegistry, PaymentInterface $payment) { $resolversRegistry->all()->willReturn([$firstMethodsResolver, $secondMethodsResolver]); $firstMethodsResolver->supports($payment)->willReturn(false); $secondMethodsResolver->supports($payment)->willReturn(false); $this->supports($payment)->shouldReturn(false); }
/** * @return \Closure */ private function createChoiceList() { return function (Options $options) { if (isset($options['subject'])) { $resolvedMethods = $this->paymentMethodsResolver->getSupportedMethods($options['subject']); } else { $resolvedMethods = $this->paymentMethodRepository->findAll(); } return new ObjectChoiceList($resolvedMethods, null, [], null, 'id'); }; }