Loading Spec/Core/Boost/PaymentSpec.php +258 −258 Original line number Original line Diff line number Diff line Loading @@ -411,160 +411,160 @@ class PaymentSpec extends ObjectBehavior ]); ]); } } function it_should_pay_network_with_creditcard_offchain_tokens( // function it_should_pay_network_with_creditcard_offchain_tokens( Network $boost, // Network $boost, User $owner, // User $owner, Customer $customer // Customer $customer ) // ) { // { $boost->getHandler() // $boost->getHandler() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('network'); // ->willReturn('network'); $boost->getBidType() // $boost->getBidType() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('tokens'); // ->willReturn('tokens'); $boost->getGuid() // $boost->getGuid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(8000); // ->willReturn(8000); $boost->getOwner() // $boost->getOwner() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($owner); // ->willReturn($owner); $bid = (string) BigNumber::toPlain(1, 18); // $bid = (string) BigNumber::toPlain(1, 18); $boost->getBid() // $boost->getBid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($bid); // ->willReturn($bid); $this->stripePayments->getCustomer(Argument::type(Customer::class)) // $this->stripePayments->getCustomer(Argument::type(Customer::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(false); // ->willReturn(false); $this->stripePayments->createCustomer(Argument::type(Customer::class)) // $this->stripePayments->createCustomer(Argument::type(Customer::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($customer); // ->willReturn($customer); $this->stripePayments->setSale(Argument::type(Sale::class)) // $this->stripePayments->setSale(Argument::type(Sale::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~sale'); // ->willReturn('~sale'); $customer->getId() // $customer->getId() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~cid'); // ->willReturn('~cid'); $this->config->get('blockchain') // $this->config->get('blockchain') ->shouldBeCalled() // ->shouldBeCalled() ->willReturn([ // ->willReturn([ 'token_symbol' => 'TEST' // 'token_symbol' => 'TEST' ]); // ]); $this->rates->setCurrency('TEST') // $this->rates->setCurrency('TEST') ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($this->rates); // ->willReturn($this->rates); $this->rates->get() // $this->rates->get() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(2); // ->willReturn(2); $this->txManager->add(Argument::type(Transaction::class)) // $this->txManager->add(Argument::type(Transaction::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(true); // ->willReturn(true); $owner->get('guid')->willReturn(5000); // $owner->get('guid')->willReturn(5000); $this // $this ->pay($boost, [ // ->pay($boost, [ 'method' => 'creditcard', // 'method' => 'creditcard', 'token' => '~TOKEN' // 'token' => '~TOKEN' ]) // ]) ->shouldReturn('creditcard:~sale'); // ->shouldReturn('creditcard:~sale'); } // } function it_should_pay_peer_with_creditcard_offchain_tokens( // function it_should_pay_peer_with_creditcard_offchain_tokens( Peer $boost, // Peer $boost, User $owner, // User $owner, Customer $customer, // Customer $customer, User $destination // User $destination ) // ) { // { $boost->getHandler() // $boost->getHandler() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('peer'); // ->willReturn('peer'); $boost->getMethod() // $boost->getMethod() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('tokens'); // ->willReturn('tokens'); $boost->getGuid() // $boost->getGuid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(8000); // ->willReturn(8000); $boost->getOwner() // $boost->getOwner() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($owner); // ->willReturn($owner); $bid = (string) BigNumber::toPlain(1, 18); // $bid = (string) BigNumber::toPlain(1, 18); $boost->getBid() // $boost->getBid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($bid); // ->willReturn($bid); $boost->getDestination() // $boost->getDestination() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($destination); // ->willReturn($destination); $destination->getPhoneNumberHash() // $destination->getPhoneNumberHash() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~PHONE'); // ->willReturn('~PHONE'); $destination->get('guid')->willReturn(5001); // $destination->get('guid')->willReturn(5001); $this->stripePayments->getCustomer(Argument::type(Customer::class)) // $this->stripePayments->getCustomer(Argument::type(Customer::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(false); // ->willReturn(false); $this->stripePayments->createCustomer(Argument::type(Customer::class)) // $this->stripePayments->createCustomer(Argument::type(Customer::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($customer); // ->willReturn($customer); $this->stripePayments->setSale(Argument::type(Sale::class)) // $this->stripePayments->setSale(Argument::type(Sale::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~sale'); // ->willReturn('~sale'); $customer->getId() // $customer->getId() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~cid'); // ->willReturn('~cid'); $this->config->get('blockchain') // $this->config->get('blockchain') ->shouldBeCalled() // ->shouldBeCalled() ->willReturn([ // ->willReturn([ 'token_symbol' => 'TEST' // 'token_symbol' => 'TEST' ]); // ]); $this->rates->setCurrency('TEST') // $this->rates->setCurrency('TEST') ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($this->rates); // ->willReturn($this->rates); $this->rates->get() // $this->rates->get() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(2); // ->willReturn(2); $this->txManager->add(Argument::type(Transaction::class)) // $this->txManager->add(Argument::type(Transaction::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(true); // ->willReturn(true); $owner->get('guid')->willReturn(5000); // $owner->get('guid')->willReturn(5000); $this // $this ->pay($boost, [ // ->pay($boost, [ 'method' => 'creditcard', // 'method' => 'creditcard', 'token' => '~TOKEN' // 'token' => '~TOKEN' ]) // ]) ->shouldReturn('creditcard:~sale'); // ->shouldReturn('creditcard:~sale'); } // } function it_should_throw_if_no_rewards_program_during_pay_peer_with_creditcard_offchain_tokens( function it_should_throw_if_no_rewards_program_during_pay_peer_with_creditcard_offchain_tokens( Peer $boost, Peer $boost, Loading Loading @@ -717,35 +717,35 @@ class PaymentSpec extends ObjectBehavior ->duringPay($boost, ''); ->duringPay($boost, ''); } } function it_should_charge_money_boost( // function it_should_charge_money_boost( Network $boost, // Network $boost, User $owner // User $owner ) // ) { // { $boost->getBidType() // $boost->getBidType() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('money'); // ->willReturn('money'); $boost->getOwner() // $boost->getOwner() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($owner); // ->willReturn($owner); $boost->getTransactionId() // $boost->getTransactionId() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~stripe'); // ->willReturn('~stripe'); $owner->get('referrer') // $owner->get('referrer') ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(null); // ->willReturn(null); $this->stripePayments->chargeSale(Argument::type(Sale::class)) // $this->stripePayments->chargeSale(Argument::type(Sale::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(null); // Don't trigger email // ->willReturn(null); // Don't trigger email $this // $this ->charge($boost) // ->charge($boost) ->shouldReturn(null); // ->shouldReturn(null); } // } function it_should_charge_peer_offchain_tokens_boost( function it_should_charge_peer_offchain_tokens_boost( Peer $boost, Peer $boost, Loading Loading @@ -811,86 +811,86 @@ class PaymentSpec extends ObjectBehavior ->shouldReturn(true); ->shouldReturn(true); } } function it_should_charge_network_creditcard_offchain_tokens_boost( // function it_should_charge_network_creditcard_offchain_tokens_boost( Network $boost // Network $boost ) // ) { // { $boost->getHandler() // $boost->getHandler() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('network'); // ->willReturn('network'); $boost->getBidType() // $boost->getBidType() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('tokens'); // ->willReturn('tokens'); $boost->getTransactionId() // $boost->getTransactionId() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('creditcard:123'); // ->willReturn('creditcard:123'); $this->stripePayments->chargeSale(Argument::type(Sale::class)) // $this->stripePayments->chargeSale(Argument::type(Sale::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(null); // Avoid email event // ->willReturn(null); // Avoid email event $this // $this ->charge($boost) // ->charge($boost) ->shouldReturn(null); // ->shouldReturn(null); } // } function it_should_charge_peer_creditcard_offchain_tokens_boost( // function it_should_charge_peer_creditcard_offchain_tokens_boost( Peer $boost, // Peer $boost, User $owner, // User $owner, User $destination // User $destination ) // ) { // { $boost->getHandler() // $boost->getHandler() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('peer'); // ->willReturn('peer'); $boost->getMethod() // $boost->getMethod() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('tokens'); // ->willReturn('tokens'); $boost->getTransactionId() // $boost->getTransactionId() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('creditcard:123'); // ->willReturn('creditcard:123'); $bid = (string) BigNumber::toPlain(1, 18); // $bid = (string) BigNumber::toPlain(1, 18); $boost->getBid() // $boost->getBid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($bid); // ->willReturn($bid); $boost->getOwner() // $boost->getOwner() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($owner); // ->willReturn($owner); $owner->get('guid')->willReturn(5000); // $owner->get('guid')->willReturn(5000); $boost->getDestination() // $boost->getDestination() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($destination); // ->willReturn($destination); $destination->get('guid')->willReturn(5001); // $destination->get('guid')->willReturn(5001); $boost->getGuid() // $boost->getGuid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(8000); // ->willReturn(8000); $this->stripePayments->chargeSale(Argument::type(Sale::class)) // $this->stripePayments->chargeSale(Argument::type(Sale::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(null); // Avoid email event // ->willReturn(null); // Avoid email event $this->txManager->add(Argument::type(Transaction::class)) // $this->txManager->add(Argument::type(Transaction::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(true); // ->willReturn(true); $this->withholding->add(Argument::type(Withholding::class)) // $this->withholding->add(Argument::type(Withholding::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(true); // ->willReturn(true); $this // $this ->charge($boost) // ->charge($boost) ->shouldReturn(null); // ->shouldReturn(null); } // } function it_should_throw_if_payment_method_is_not_supported_during_charge( function it_should_throw_if_payment_method_is_not_supported_during_charge( Network $boost Network $boost Loading Spec/Core/Wire/ManagerSpec.php +26 −47 Original line number Original line Diff line number Diff line Loading @@ -17,81 +17,59 @@ use Prophecy\Argument; class ManagerSpec extends ObjectBehavior class ManagerSpec extends ObjectBehavior { { protected $cache; protected $cacheDelegate; protected $repo; protected $repo; protected $subscriptionsManager; protected $txManager; protected $txManager; protected $txRepo; protected $txRepo; protected $config; protected $config; protected $queue; protected $client; protected $client; protected $token; protected $token; protected $cap; protected $cap; protected $dispatcher; protected $call; protected $call; protected $balance; protected $redisLock; protected $plusDelegate; protected $plusDelegate; protected $offchainTxs; protected $offchainTxs; public function let( public function let( Redis $cache, Repository $repo, Repository $repo, SubscriptionsManager $subscriptionsManager, BlockchainManager $txManager, BlockchainManager $txManager, Core\Blockchain\Transactions\Repository $txRepo, Core\Blockchain\Transactions\Repository $txRepo, Config $config, Config $config, Client $queue, Core\Blockchain\Services\Ethereum $client, Core\Blockchain\Services\Ethereum $client, Core\Blockchain\Token $token, Core\Blockchain\Token $token, Core\Blockchain\Wallets\OffChain\Cap $cap, Core\Blockchain\Wallets\OffChain\Cap $cap, Core\Events\EventsDispatcher $dispatcher, Core\Data\Call $call, Core\Blockchain\Wallets\OffChain\Balance $balance, Core\Data\Locks\Redis $redisLock, Core\Wire\Delegates\Plus $plusDelegate, Core\Wire\Delegates\Plus $plusDelegate, Core\Blockchain\Wallets\OffChain\Transactions $offchainTxs Core\Wire\Delegates\RecurringDelegate $recurringDelegate, Core\Wire\Delegates\NotificationDelegate $notificationDelegate, Core\Wire\Delegates\CacheDelegate $cacheDelegate, Core\Blockchain\Wallets\OffChain\Transactions $offchainTxs, Core\Payments\Stripe\Intents\Manager $stripeIntentsManager ) { ) { $this->beConstructedWith($cache, $repo, $subscriptionsManager, $txManager, $txRepo, $config, $queue, $client, $this->beConstructedWith( $token, $cap, $dispatcher, $plusDelegate, $offchainTxs); $repo, $txManager, Core\Di\Di::_()->bind('Database\Cassandra\Entities', function ($di) use ($call) { $txRepo, return $call->getWrappedObject(); $config, }); $client, $token, Core\Di\Di::_()->bind('Database\Cassandra\UserIndexes', function ($di) use ($call) { $cap, return $call->getWrappedObject(); $plusDelegate, }); $recurringDelegate, $notificationDelegate, Core\Di\Di::_()->bind('Blockchain\Transactions\Repository', function ($di) use ($txRepo) { $cacheDelegate, return $txRepo->getWrappedObject(); $offchainTxs, }); $stripeIntentsManager Core\Di\Di::_()->bind('Blockchain\Wallets\OffChain\Balance', function ($di) use ($balance) { ); return $balance->getWrappedObject(); }); $this->cacheDelegate = $cacheDelegate; Core\Di\Di::_()->bind('Database\Locks', function ($di) use ($redisLock) { return $redisLock->getWrappedObject(); }); $this->cache = $cache; $this->repo = $repo; $this->repo = $repo; $this->subscriptionsManager = $subscriptionsManager; $this->txManager = $txManager; $this->txManager = $txManager; $this->txRepo = $txRepo; $this->txRepo = $txRepo; $this->config = $config; $this->config = $config; $this->queue = $queue; $this->client = $client; $this->client = $client; $this->token = $token; $this->token = $token; $this->cap = $cap; $this->cap = $cap; $this->dispatcher = $dispatcher; $this->call = $call; $this->balance = $balance; $this->redisLock = $redisLock; $this->plusDelegate = $plusDelegate; $this->plusDelegate = $plusDelegate; $this->offchainTxs = $offchainTxs; $this->offchainTxs = $offchainTxs; Loading Loading @@ -155,16 +133,17 @@ class ManagerSpec extends ObjectBehavior ->shouldBeCalled() ->shouldBeCalled() ->willReturn(true); ->willReturn(true); $this->queue->setQueue(Argument::any()) /*$this->queue->setQueue(Argument::any()) ->shouldBeCalled() ->shouldBeCalled() ->willReturn($this->queue); ->willReturn($this->queue); $this->queue->send(Argument::any()) $this->queue->send(Argument::any()) ->shouldBeCalled(); ->shouldBeCalled();*/ $receiver = new User(); $receiver = new User(); $receiver->guid = 123; $receiver->guid = 123; $sender = new User(); $sender = new User(); $sender->guid = 123; $sender->guid = 123; $wire = new WireModel(); $wire = new WireModel(); $wire->setReceiver($receiver) $wire->setReceiver($receiver) ->setSender($sender) ->setSender($sender) Loading Spec/Core/Wire/Subscriptions/ManagerSpec.php +7 −5 Original line number Original line Diff line number Diff line Loading @@ -3,7 +3,8 @@ namespace Spec\Minds\Core\Wire\Subscriptions; namespace Spec\Minds\Core\Wire\Subscriptions; use Minds\Core\Di\Di; use Minds\Core\Di\Di; use Minds\Core\Payments\Subscriptions\Manager; use Minds\Core\Wire\Manager as WireManager; use Minds\Core\Payments\Subscriptions\Manager as SubscriptionsManager; use Minds\Core\Payments\Subscriptions\Repository; use Minds\Core\Payments\Subscriptions\Repository; use Minds\Core\Wire\Exceptions\WalletNotSetupException; use Minds\Core\Wire\Exceptions\WalletNotSetupException; use Minds\Entities\User; use Minds\Entities\User; Loading @@ -19,10 +20,11 @@ class ManagerSpec extends ObjectBehavior } } function it_should_create_a_subscription( function it_should_create_a_subscription( Manager $manager WireManager $wireManager, SubscriptionsManager $subscriptionsManager ) ) { { $this->beConstructedWith($manager); $this->beConstructedWith($wireManager, $subscriptionsManager); $sender = new User(); $sender = new User(); Loading @@ -30,13 +32,13 @@ class ManagerSpec extends ObjectBehavior $receiver = new User(); $receiver = new User(); $receiver->guid = 456; $receiver->guid = 456; $manager->setSubscription(Argument::that(function($subscription) { $subscriptionsManager->setSubscription(Argument::that(function($subscription) { return $subscription->getUser()->guid == 123 return $subscription->getUser()->guid == 123 && $subscription->getEntity()->guid == 456 && $subscription->getEntity()->guid == 456 && $subscription->getAmount() == 5; && $subscription->getAmount() == 5; })) })) ->willReturn(123); ->willReturn(123); $manager->create()->shouldBeCalled(); $subscriptionsManager->create()->shouldBeCalled(); $this->setAmount(5) $this->setAmount(5) ->setSender($sender) ->setSender($sender) Loading Spec/bootstrap.php +18 −14 Original line number Original line Diff line number Diff line Loading @@ -35,7 +35,11 @@ $CONFIG->payments = [ 'public_key' => 'random', 'public_key' => 'random', 'private_key' => 'random_private' 'private_key' => 'random_private' ], ], ]]; ], 'stripe' => [ 'api_key' => 'phpspec', ], ]; class Mock class Mock { { Loading Loading
Spec/Core/Boost/PaymentSpec.php +258 −258 Original line number Original line Diff line number Diff line Loading @@ -411,160 +411,160 @@ class PaymentSpec extends ObjectBehavior ]); ]); } } function it_should_pay_network_with_creditcard_offchain_tokens( // function it_should_pay_network_with_creditcard_offchain_tokens( Network $boost, // Network $boost, User $owner, // User $owner, Customer $customer // Customer $customer ) // ) { // { $boost->getHandler() // $boost->getHandler() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('network'); // ->willReturn('network'); $boost->getBidType() // $boost->getBidType() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('tokens'); // ->willReturn('tokens'); $boost->getGuid() // $boost->getGuid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(8000); // ->willReturn(8000); $boost->getOwner() // $boost->getOwner() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($owner); // ->willReturn($owner); $bid = (string) BigNumber::toPlain(1, 18); // $bid = (string) BigNumber::toPlain(1, 18); $boost->getBid() // $boost->getBid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($bid); // ->willReturn($bid); $this->stripePayments->getCustomer(Argument::type(Customer::class)) // $this->stripePayments->getCustomer(Argument::type(Customer::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(false); // ->willReturn(false); $this->stripePayments->createCustomer(Argument::type(Customer::class)) // $this->stripePayments->createCustomer(Argument::type(Customer::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($customer); // ->willReturn($customer); $this->stripePayments->setSale(Argument::type(Sale::class)) // $this->stripePayments->setSale(Argument::type(Sale::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~sale'); // ->willReturn('~sale'); $customer->getId() // $customer->getId() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~cid'); // ->willReturn('~cid'); $this->config->get('blockchain') // $this->config->get('blockchain') ->shouldBeCalled() // ->shouldBeCalled() ->willReturn([ // ->willReturn([ 'token_symbol' => 'TEST' // 'token_symbol' => 'TEST' ]); // ]); $this->rates->setCurrency('TEST') // $this->rates->setCurrency('TEST') ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($this->rates); // ->willReturn($this->rates); $this->rates->get() // $this->rates->get() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(2); // ->willReturn(2); $this->txManager->add(Argument::type(Transaction::class)) // $this->txManager->add(Argument::type(Transaction::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(true); // ->willReturn(true); $owner->get('guid')->willReturn(5000); // $owner->get('guid')->willReturn(5000); $this // $this ->pay($boost, [ // ->pay($boost, [ 'method' => 'creditcard', // 'method' => 'creditcard', 'token' => '~TOKEN' // 'token' => '~TOKEN' ]) // ]) ->shouldReturn('creditcard:~sale'); // ->shouldReturn('creditcard:~sale'); } // } function it_should_pay_peer_with_creditcard_offchain_tokens( // function it_should_pay_peer_with_creditcard_offchain_tokens( Peer $boost, // Peer $boost, User $owner, // User $owner, Customer $customer, // Customer $customer, User $destination // User $destination ) // ) { // { $boost->getHandler() // $boost->getHandler() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('peer'); // ->willReturn('peer'); $boost->getMethod() // $boost->getMethod() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('tokens'); // ->willReturn('tokens'); $boost->getGuid() // $boost->getGuid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(8000); // ->willReturn(8000); $boost->getOwner() // $boost->getOwner() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($owner); // ->willReturn($owner); $bid = (string) BigNumber::toPlain(1, 18); // $bid = (string) BigNumber::toPlain(1, 18); $boost->getBid() // $boost->getBid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($bid); // ->willReturn($bid); $boost->getDestination() // $boost->getDestination() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($destination); // ->willReturn($destination); $destination->getPhoneNumberHash() // $destination->getPhoneNumberHash() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~PHONE'); // ->willReturn('~PHONE'); $destination->get('guid')->willReturn(5001); // $destination->get('guid')->willReturn(5001); $this->stripePayments->getCustomer(Argument::type(Customer::class)) // $this->stripePayments->getCustomer(Argument::type(Customer::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(false); // ->willReturn(false); $this->stripePayments->createCustomer(Argument::type(Customer::class)) // $this->stripePayments->createCustomer(Argument::type(Customer::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($customer); // ->willReturn($customer); $this->stripePayments->setSale(Argument::type(Sale::class)) // $this->stripePayments->setSale(Argument::type(Sale::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~sale'); // ->willReturn('~sale'); $customer->getId() // $customer->getId() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~cid'); // ->willReturn('~cid'); $this->config->get('blockchain') // $this->config->get('blockchain') ->shouldBeCalled() // ->shouldBeCalled() ->willReturn([ // ->willReturn([ 'token_symbol' => 'TEST' // 'token_symbol' => 'TEST' ]); // ]); $this->rates->setCurrency('TEST') // $this->rates->setCurrency('TEST') ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($this->rates); // ->willReturn($this->rates); $this->rates->get() // $this->rates->get() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(2); // ->willReturn(2); $this->txManager->add(Argument::type(Transaction::class)) // $this->txManager->add(Argument::type(Transaction::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(true); // ->willReturn(true); $owner->get('guid')->willReturn(5000); // $owner->get('guid')->willReturn(5000); $this // $this ->pay($boost, [ // ->pay($boost, [ 'method' => 'creditcard', // 'method' => 'creditcard', 'token' => '~TOKEN' // 'token' => '~TOKEN' ]) // ]) ->shouldReturn('creditcard:~sale'); // ->shouldReturn('creditcard:~sale'); } // } function it_should_throw_if_no_rewards_program_during_pay_peer_with_creditcard_offchain_tokens( function it_should_throw_if_no_rewards_program_during_pay_peer_with_creditcard_offchain_tokens( Peer $boost, Peer $boost, Loading Loading @@ -717,35 +717,35 @@ class PaymentSpec extends ObjectBehavior ->duringPay($boost, ''); ->duringPay($boost, ''); } } function it_should_charge_money_boost( // function it_should_charge_money_boost( Network $boost, // Network $boost, User $owner // User $owner ) // ) { // { $boost->getBidType() // $boost->getBidType() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('money'); // ->willReturn('money'); $boost->getOwner() // $boost->getOwner() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($owner); // ->willReturn($owner); $boost->getTransactionId() // $boost->getTransactionId() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('~stripe'); // ->willReturn('~stripe'); $owner->get('referrer') // $owner->get('referrer') ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(null); // ->willReturn(null); $this->stripePayments->chargeSale(Argument::type(Sale::class)) // $this->stripePayments->chargeSale(Argument::type(Sale::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(null); // Don't trigger email // ->willReturn(null); // Don't trigger email $this // $this ->charge($boost) // ->charge($boost) ->shouldReturn(null); // ->shouldReturn(null); } // } function it_should_charge_peer_offchain_tokens_boost( function it_should_charge_peer_offchain_tokens_boost( Peer $boost, Peer $boost, Loading Loading @@ -811,86 +811,86 @@ class PaymentSpec extends ObjectBehavior ->shouldReturn(true); ->shouldReturn(true); } } function it_should_charge_network_creditcard_offchain_tokens_boost( // function it_should_charge_network_creditcard_offchain_tokens_boost( Network $boost // Network $boost ) // ) { // { $boost->getHandler() // $boost->getHandler() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('network'); // ->willReturn('network'); $boost->getBidType() // $boost->getBidType() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('tokens'); // ->willReturn('tokens'); $boost->getTransactionId() // $boost->getTransactionId() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('creditcard:123'); // ->willReturn('creditcard:123'); $this->stripePayments->chargeSale(Argument::type(Sale::class)) // $this->stripePayments->chargeSale(Argument::type(Sale::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(null); // Avoid email event // ->willReturn(null); // Avoid email event $this // $this ->charge($boost) // ->charge($boost) ->shouldReturn(null); // ->shouldReturn(null); } // } function it_should_charge_peer_creditcard_offchain_tokens_boost( // function it_should_charge_peer_creditcard_offchain_tokens_boost( Peer $boost, // Peer $boost, User $owner, // User $owner, User $destination // User $destination ) // ) { // { $boost->getHandler() // $boost->getHandler() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('peer'); // ->willReturn('peer'); $boost->getMethod() // $boost->getMethod() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('tokens'); // ->willReturn('tokens'); $boost->getTransactionId() // $boost->getTransactionId() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn('creditcard:123'); // ->willReturn('creditcard:123'); $bid = (string) BigNumber::toPlain(1, 18); // $bid = (string) BigNumber::toPlain(1, 18); $boost->getBid() // $boost->getBid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($bid); // ->willReturn($bid); $boost->getOwner() // $boost->getOwner() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($owner); // ->willReturn($owner); $owner->get('guid')->willReturn(5000); // $owner->get('guid')->willReturn(5000); $boost->getDestination() // $boost->getDestination() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn($destination); // ->willReturn($destination); $destination->get('guid')->willReturn(5001); // $destination->get('guid')->willReturn(5001); $boost->getGuid() // $boost->getGuid() ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(8000); // ->willReturn(8000); $this->stripePayments->chargeSale(Argument::type(Sale::class)) // $this->stripePayments->chargeSale(Argument::type(Sale::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(null); // Avoid email event // ->willReturn(null); // Avoid email event $this->txManager->add(Argument::type(Transaction::class)) // $this->txManager->add(Argument::type(Transaction::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(true); // ->willReturn(true); $this->withholding->add(Argument::type(Withholding::class)) // $this->withholding->add(Argument::type(Withholding::class)) ->shouldBeCalled() // ->shouldBeCalled() ->willReturn(true); // ->willReturn(true); $this // $this ->charge($boost) // ->charge($boost) ->shouldReturn(null); // ->shouldReturn(null); } // } function it_should_throw_if_payment_method_is_not_supported_during_charge( function it_should_throw_if_payment_method_is_not_supported_during_charge( Network $boost Network $boost Loading
Spec/Core/Wire/ManagerSpec.php +26 −47 Original line number Original line Diff line number Diff line Loading @@ -17,81 +17,59 @@ use Prophecy\Argument; class ManagerSpec extends ObjectBehavior class ManagerSpec extends ObjectBehavior { { protected $cache; protected $cacheDelegate; protected $repo; protected $repo; protected $subscriptionsManager; protected $txManager; protected $txManager; protected $txRepo; protected $txRepo; protected $config; protected $config; protected $queue; protected $client; protected $client; protected $token; protected $token; protected $cap; protected $cap; protected $dispatcher; protected $call; protected $call; protected $balance; protected $redisLock; protected $plusDelegate; protected $plusDelegate; protected $offchainTxs; protected $offchainTxs; public function let( public function let( Redis $cache, Repository $repo, Repository $repo, SubscriptionsManager $subscriptionsManager, BlockchainManager $txManager, BlockchainManager $txManager, Core\Blockchain\Transactions\Repository $txRepo, Core\Blockchain\Transactions\Repository $txRepo, Config $config, Config $config, Client $queue, Core\Blockchain\Services\Ethereum $client, Core\Blockchain\Services\Ethereum $client, Core\Blockchain\Token $token, Core\Blockchain\Token $token, Core\Blockchain\Wallets\OffChain\Cap $cap, Core\Blockchain\Wallets\OffChain\Cap $cap, Core\Events\EventsDispatcher $dispatcher, Core\Data\Call $call, Core\Blockchain\Wallets\OffChain\Balance $balance, Core\Data\Locks\Redis $redisLock, Core\Wire\Delegates\Plus $plusDelegate, Core\Wire\Delegates\Plus $plusDelegate, Core\Blockchain\Wallets\OffChain\Transactions $offchainTxs Core\Wire\Delegates\RecurringDelegate $recurringDelegate, Core\Wire\Delegates\NotificationDelegate $notificationDelegate, Core\Wire\Delegates\CacheDelegate $cacheDelegate, Core\Blockchain\Wallets\OffChain\Transactions $offchainTxs, Core\Payments\Stripe\Intents\Manager $stripeIntentsManager ) { ) { $this->beConstructedWith($cache, $repo, $subscriptionsManager, $txManager, $txRepo, $config, $queue, $client, $this->beConstructedWith( $token, $cap, $dispatcher, $plusDelegate, $offchainTxs); $repo, $txManager, Core\Di\Di::_()->bind('Database\Cassandra\Entities', function ($di) use ($call) { $txRepo, return $call->getWrappedObject(); $config, }); $client, $token, Core\Di\Di::_()->bind('Database\Cassandra\UserIndexes', function ($di) use ($call) { $cap, return $call->getWrappedObject(); $plusDelegate, }); $recurringDelegate, $notificationDelegate, Core\Di\Di::_()->bind('Blockchain\Transactions\Repository', function ($di) use ($txRepo) { $cacheDelegate, return $txRepo->getWrappedObject(); $offchainTxs, }); $stripeIntentsManager Core\Di\Di::_()->bind('Blockchain\Wallets\OffChain\Balance', function ($di) use ($balance) { ); return $balance->getWrappedObject(); }); $this->cacheDelegate = $cacheDelegate; Core\Di\Di::_()->bind('Database\Locks', function ($di) use ($redisLock) { return $redisLock->getWrappedObject(); }); $this->cache = $cache; $this->repo = $repo; $this->repo = $repo; $this->subscriptionsManager = $subscriptionsManager; $this->txManager = $txManager; $this->txManager = $txManager; $this->txRepo = $txRepo; $this->txRepo = $txRepo; $this->config = $config; $this->config = $config; $this->queue = $queue; $this->client = $client; $this->client = $client; $this->token = $token; $this->token = $token; $this->cap = $cap; $this->cap = $cap; $this->dispatcher = $dispatcher; $this->call = $call; $this->balance = $balance; $this->redisLock = $redisLock; $this->plusDelegate = $plusDelegate; $this->plusDelegate = $plusDelegate; $this->offchainTxs = $offchainTxs; $this->offchainTxs = $offchainTxs; Loading Loading @@ -155,16 +133,17 @@ class ManagerSpec extends ObjectBehavior ->shouldBeCalled() ->shouldBeCalled() ->willReturn(true); ->willReturn(true); $this->queue->setQueue(Argument::any()) /*$this->queue->setQueue(Argument::any()) ->shouldBeCalled() ->shouldBeCalled() ->willReturn($this->queue); ->willReturn($this->queue); $this->queue->send(Argument::any()) $this->queue->send(Argument::any()) ->shouldBeCalled(); ->shouldBeCalled();*/ $receiver = new User(); $receiver = new User(); $receiver->guid = 123; $receiver->guid = 123; $sender = new User(); $sender = new User(); $sender->guid = 123; $sender->guid = 123; $wire = new WireModel(); $wire = new WireModel(); $wire->setReceiver($receiver) $wire->setReceiver($receiver) ->setSender($sender) ->setSender($sender) Loading
Spec/Core/Wire/Subscriptions/ManagerSpec.php +7 −5 Original line number Original line Diff line number Diff line Loading @@ -3,7 +3,8 @@ namespace Spec\Minds\Core\Wire\Subscriptions; namespace Spec\Minds\Core\Wire\Subscriptions; use Minds\Core\Di\Di; use Minds\Core\Di\Di; use Minds\Core\Payments\Subscriptions\Manager; use Minds\Core\Wire\Manager as WireManager; use Minds\Core\Payments\Subscriptions\Manager as SubscriptionsManager; use Minds\Core\Payments\Subscriptions\Repository; use Minds\Core\Payments\Subscriptions\Repository; use Minds\Core\Wire\Exceptions\WalletNotSetupException; use Minds\Core\Wire\Exceptions\WalletNotSetupException; use Minds\Entities\User; use Minds\Entities\User; Loading @@ -19,10 +20,11 @@ class ManagerSpec extends ObjectBehavior } } function it_should_create_a_subscription( function it_should_create_a_subscription( Manager $manager WireManager $wireManager, SubscriptionsManager $subscriptionsManager ) ) { { $this->beConstructedWith($manager); $this->beConstructedWith($wireManager, $subscriptionsManager); $sender = new User(); $sender = new User(); Loading @@ -30,13 +32,13 @@ class ManagerSpec extends ObjectBehavior $receiver = new User(); $receiver = new User(); $receiver->guid = 456; $receiver->guid = 456; $manager->setSubscription(Argument::that(function($subscription) { $subscriptionsManager->setSubscription(Argument::that(function($subscription) { return $subscription->getUser()->guid == 123 return $subscription->getUser()->guid == 123 && $subscription->getEntity()->guid == 456 && $subscription->getEntity()->guid == 456 && $subscription->getAmount() == 5; && $subscription->getAmount() == 5; })) })) ->willReturn(123); ->willReturn(123); $manager->create()->shouldBeCalled(); $subscriptionsManager->create()->shouldBeCalled(); $this->setAmount(5) $this->setAmount(5) ->setSender($sender) ->setSender($sender) Loading
Spec/bootstrap.php +18 −14 Original line number Original line Diff line number Diff line Loading @@ -35,7 +35,11 @@ $CONFIG->payments = [ 'public_key' => 'random', 'public_key' => 'random', 'private_key' => 'random_private' 'private_key' => 'random_private' ], ], ]]; ], 'stripe' => [ 'api_key' => 'phpspec', ], ]; class Mock class Mock { { Loading