public function testIn_multipleValues()
 {
     $creditCard = SubscriptionHelper::createCreditCard();
     $triallessPlan = SubscriptionHelper::triallessPlan();
     $activeSubscription = Braintree\Subscription::create(array('paymentMethodToken' => $creditCard->token, 'planId' => $triallessPlan['id'], 'price' => '4'))->subscription;
     $canceledSubscription = Braintree\Subscription::create(array('paymentMethodToken' => $creditCard->token, 'planId' => $triallessPlan['id'], 'price' => '4'))->subscription;
     Braintree\Subscription::cancel($canceledSubscription->id);
     $collection = Braintree\Subscription::search(array(Braintree\SubscriptionSearch::status()->in(array(Braintree\Subscription::ACTIVE, Braintree\Subscription::CANCELED)), Braintree\SubscriptionSearch::price()->is('4')));
     $this->assertTrue(Test\Helper::includes($collection, $activeSubscription));
     $this->assertTrue(Test\Helper::includes($collection, $canceledSubscription));
 }
 /**
  * Cancel the subscription and troubleshoot
  * @param string $subscription_id
  * @return bool
  * @throws Exception
  */
 public function cancelSubscription($subscription_id)
 {
     $result = Braintree_Subscription::cancel($subscription_id);
     if ($result->success) {
         return true;
     } else {
         foreach ($result->errors->deepAll() as $error) {
             throw new Exception($error->code . ": " . $error->message . "\n");
         }
     }
     return false;
 }
Пример #3
0
 /**
  * Cancel the subscription immediately.
  *
  * @return $this
  */
 public function cancelNow()
 {
     $subscription = $this->asBraintreeSubscription();
     BraintreeSubscription::cancel($subscription->id);
     $this->markAsCancelled();
     return $this;
 }
Пример #4
0
 public function testCancel_returnsErrorIfCancelingCanceledSubscription()
 {
     $subscription = SubscriptionHelper::createSubscription();
     Braintree\Subscription::cancel($subscription->id);
     $result = Braintree\Subscription::cancel($subscription->id);
     $this->assertFalse($result->success);
     $errors = $result->errors->forKey('subscription')->onAttribute('status');
     $this->assertEquals(Braintree\Error\Codes::SUBSCRIPTION_STATUS_IS_CANCELED, $errors[0]->code);
 }
Пример #5
0
 /**
  * Cancel subscription.
  * @param string $subscriptionId
  * @return \Braintree\Result\Error|\Braintree\Result\Successful
  */
 public function cancelSubscription($subscriptionId)
 {
     return Subscription::cancel($subscriptionId);
 }
Пример #6
0
 /**
  * Cancel the subscription immediately.
  *
  * @return $this
  */
 public function cancelNow()
 {
     BraintreeSubscription::cancel($this->braintree_id);
     $this->markAsCancelled();
     return $this;
 }