public function testSearch_nextBillingDate() { $creditCard = SubscriptionHelper::createCreditCard(); $triallessPlan = SubscriptionHelper::triallessPlan(); $trialPlan = SubscriptionHelper::trialPlan(); $triallessSubscription = Braintree\Subscription::create(['paymentMethodToken' => $creditCard->token, 'planId' => $triallessPlan['id']])->subscription; $trialSubscription = Braintree\Subscription::create(['paymentMethodToken' => $creditCard->token, 'planId' => $trialPlan['id']])->subscription; $fiveDaysFromNow = new DateTime(); $fiveDaysFromNow->modify("+5 days"); $collection = Braintree\Subscription::search([Braintree\SubscriptionSearch::nextBillingDate()->greaterThanOrEqualTo($fiveDaysFromNow)]); $this->assertTrue(Test\Helper::includes($collection, $triallessSubscription)); $this->assertFalse(Test\Helper::includes($collection, $trialSubscription)); }
public function testSearch_createdAt_convertLocalToUTC() { $creditCard = SubscriptionHelper::createCreditCard(); $plan = SubscriptionHelper::trialPlan(); $subscription = Braintree\Subscription::create(['paymentMethodToken' => $creditCard->token, 'planId' => $plan['id']])->subscription; $tenMinAgo = date_create("now -10 minutes", new DateTimeZone("US/Pacific")); $tenMinFromNow = date_create("now +10 minutes", new DateTimeZone("US/Pacific")); $collection = Braintree\Subscription::search([Braintree\SubscriptionSearch::createdAt()->between($tenMinAgo, $tenMinFromNow)]); $this->assertTrue(Test\Helper::includes($collection, $subscription)); }
public function testUpdate_whenSuccessful() { $subscription = SubscriptionHelper::createSubscription(); $newId = strval(rand()); $newPlan = SubscriptionHelper::trialPlan(); $result = Braintree\Subscription::update($subscription->id, ['id' => $newId, 'price' => '999.99', 'planId' => $newPlan['id']]); $this->assertTrue($result->success); $this->assertEquals($newId, $result->subscription->id); $this->assertEquals($newPlan['id'], $result->subscription->planId); $this->assertEquals('999.99', $result->subscription->price); }
public function testContains() { $creditCard = SubscriptionHelper::createCreditCard(); $triallessPlan = SubscriptionHelper::triallessPlan(); $trialPlan = SubscriptionHelper::trialPlan(); $trialSubscription = Braintree\Subscription::create(['paymentMethodToken' => $creditCard->token, 'planId' => $trialPlan['id'], 'price' => '9'])->subscription; $triallessSubscription = Braintree\Subscription::create(['paymentMethodToken' => $creditCard->token, 'planId' => $triallessPlan['id'], 'price' => '9'])->subscription; $collection = Braintree\Subscription::search([Braintree\SubscriptionSearch::planId()->contains("ration_trial_pl"), Braintree\SubscriptionSearch::price()->is("9")]); $this->assertTrue(Test\Helper::includes($collection, $trialSubscription)); $this->assertFalse(Test\Helper::includes($collection, $triallessSubscription)); }