public function testAllMethods()
 {
     // Set the subscription fields.
     $subscription = new Subscription();
     $subscription->name = "Short subscription";
     $subscription->intervalLength = "1";
     $subscription->intervalUnit = "months";
     $subscription->startDate = "2011-03-12";
     $subscription->totalOccurrences = "14";
     $subscription->amount = rand(1, 100);
     $subscription->creditCardCardNumber = "6011000000000012";
     $subscription->creditCardExpirationDate = "2018-10";
     $subscription->creditCardCardCode = "123";
     $subscription->billToFirstName = "john";
     $subscription->billToLastName = "doe";
     // Create the subscription.
     $request = new Request();
     $response = $request->createSubscription($subscription);
     $this->assertTrue($response->isOk());
     $subscription_id = $response->getSubscriptionId();
     // Get the subscription status
     $status_request = new Request();
     $status_response = $status_request->getSubscriptionStatus($subscription_id);
     $this->assertEquals("active", $status_response->getSubscriptionStatus());
     // Update the subscription
     $update_request = new Request();
     $updated_subscription_info = new Subscription();
     $updated_subscription_info->billToFirstName = "jane";
     $updated_subscription_info->billToLastName = "smith";
     $updated_subscription_info->creditCardCardNumber = "6011000000000012";
     $updated_subscription_info->creditCardExpirationDate = "2019-10";
     $updated_subscription_info->creditCardCardCode = "423";
     $update_response = $update_request->updateSubscription($subscription_id, $updated_subscription_info);
     $this->assertTrue($update_response->isOk());
     // Cancel the subscription
     $cancellation = new Request();
     $cancel_response = $cancellation->cancelSubscription($subscription_id);
     $this->assertTrue($cancel_response->isOk());
     // Get the subscription status
     $status_request = new Request();
     $status_response = $status_request->getSubscriptionStatus($subscription_id);
     $this->assertEquals("canceled", $status_response->getSubscriptionStatus());
 }