function testAuthorizationWithConfig() { $config = new Braintree_Configuration(array('environment' => 'development', 'merchant_id' => 'integration_merchant_id', 'publicKey' => 'badPublicKey', 'privateKey' => 'badPrivateKey')); $http = new Braintree_Http($config); $result = $http->_doUrlRequest('GET', $config->baseUrl() . '/merchants/integration_merchant_id/customers'); $this->assertEquals(401, $result['status']); }
public static function createGrant($gateway, $params) { $http = new Braintree_Http($gateway->config); $http->useClientCredentials(); $response = $http->post('/oauth_testing/grants', array('grant' => $params)); return $response['grant']['code']; }
/** * * @return Braintree_AddOn[] */ public function all() { $path = $this->_config->merchantPath() . '/add_ons'; $response = $this->_http->get($path); $addOns = array("addOn" => $response['addOns']); return Braintree_Util::extractAttributeAsArray($addOns, 'addOn'); }
/** * * @param string $settlement_date * @param string $groupByCustomField * @return Braintree_SettlementBatchSummary|Braintree_Result_Error */ public function generate($settlement_date, $groupByCustomField = NULL) { $criteria = array('settlement_date' => $settlement_date); if (isset($groupByCustomField)) { $criteria['group_by_custom_field'] = $groupByCustomField; } $params = array('settlement_batch_summary' => $criteria); $path = $this->_config->merchantPath() . '/settlement_batch_summary'; $response = $this->_http->post($path, $params); if (isset($groupByCustomField)) { $response['settlementBatchSummary']['records'] = $this->_underscoreCustomField($groupByCustomField, $response['settlementBatchSummary']['records']); } return $this->_verifyGatewayResponse($response); }
function testAll_returnsAllPlans() { $newId = strval(rand()); $params = array("id" => $newId, "billingDayOfMonth" => "1", "billingFrequency" => "1", "currencyIsoCode" => "USD", "description" => "some description", "name" => "php test plan", "numberOfBillingCycles" => "1", "price" => "1.00", "trialDuration" => "3", "trialDurationUnit" => "day", "trialPeriod" => "true"); Braintree_Http::post("/plans/create_plan_for_tests", array("plan" => $params)); $addOnParams = array("kind" => "add_on", "plan_id" => $newId, "amount" => "1.00", "name" => "add_on_name"); Braintree_Http::post("/modifications/create_modification_for_tests", array("modification" => $addOnParams)); $discountParams = array("kind" => "discount", "plan_id" => $newId, "amount" => "1.00", "name" => "discount_name"); Braintree_Http::post("/modifications/create_modification_for_tests", array("modification" => $discountParams)); $plans = Braintree_Plan::all(); foreach ($plans as $plan) { if ($plan->id == $newId) { $actualPlan = $plan; } } $this->assertNotNull($actualPlan); $this->assertEquals($params["billingDayOfMonth"], $actualPlan->billingDayOfMonth); $this->assertEquals($params["billingFrequency"], $actualPlan->billingFrequency); $this->assertEquals($params["currencyIsoCode"], $actualPlan->currencyIsoCode); $this->assertEquals($params["description"], $actualPlan->description); $this->assertEquals($params["name"], $actualPlan->name); $this->assertEquals($params["numberOfBillingCycles"], $actualPlan->numberOfBillingCycles); $this->assertEquals($params["price"], $actualPlan->price); $this->assertEquals($params["trialDuration"], $actualPlan->trialDuration); $this->assertEquals($params["trialDurationUnit"], $actualPlan->trialDurationUnit); $this->assertEquals($params["trialPeriod"], $actualPlan->trialPeriod); $addOn = $actualPlan->addOns[0]; $this->assertEquals($addOnParams["name"], $addOn->name); $discount = $actualPlan->discounts[0]; $this->assertEquals($discountParams["name"], $discount->name); }
public static function all() { $response = Braintree_Http::get('/plans'); if (key_exists('plans', $response)) { $plans = array("plan" => $response['plans']); } else { $plans = array("plan" => array()); } return Braintree_Util::extractAttributeAsArray($plans, 'plan'); }
public static function search($query) { $criteria = array(); foreach ($query as $term) { $criteria[$term->name] = $term->toparam(); } $response = Braintree_Http::post('/verifications/advanced_search_ids', array('search' => $criteria)); $pager = array('className' => __CLASS__, 'classMethod' => 'fetch', 'methodArgs' => array($query)); return new Braintree_ResourceCollection($response, $pager); }
function testGatewayAll_returnsAllAddOns() { $newId = strval(rand()); $addOnParams = array("amount" => "100.00", "description" => "some description", "id" => $newId, "kind" => "add_on", "name" => "php_add_on", "neverExpires" => "false", "numberOfBillingCycles" => "1"); $http = new Braintree_Http(Braintree_Configuration::$global); $path = Braintree_Configuration::$global->merchantPath() . "/modifications/create_modification_for_tests"; $http->post($path, array("modification" => $addOnParams)); $gateway = new Braintree_Gateway(array('environment' => 'development', 'merchantId' => 'integration_merchant_id', 'publicKey' => 'integration_public_key', 'privateKey' => 'integration_private_key')); $addOns = $gateway->addOn()->all(); foreach ($addOns as $addOn) { if ($addOn->id == $newId) { $actualAddOn = $addOn; } } $this->assertNotNull($actualAddOn); $this->assertEquals($addOnParams["amount"], $actualAddOn->amount); $this->assertEquals($addOnParams["description"], $actualAddOn->description); $this->assertEquals($addOnParams["id"], $actualAddOn->id); }
function testSandboxSSL() { try { Braintree_Configuration::environment('sandbox'); $this->setExpectedException('Braintree_Exception_Authentication'); Braintree_Http::get('/'); } catch (Exception $e) { Braintree_Configuration::environment('development'); throw $e; } Braintree_Configuration::environment('development'); }
function testSslError() { try { Braintree_Configuration::environment('sandbox'); $this->setExpectedException('Braintree_Exception_SSLCertificate'); //ip address of api.braintreegateway.com Braintree_Http::_doUrlRequest('get', '204.109.13.121'); } catch (Exception $e) { Braintree_Configuration::environment('development'); throw $e; } Braintree_Configuration::environment('development'); }
public static function generate($settlement_date, $groupByCustomField = NULL) { $criteria = array('settlement_date' => $settlement_date); if (isset($groupByCustomField)) { $criteria['group_by_custom_field'] = $groupByCustomField; } $params = array('settlement_batch_summary' => $criteria); $response = Braintree_Http::post('/settlement_batch_summary', $params); if (isset($groupByCustomField)) { $response['settlementBatchSummary']['records'] = self::_underscoreCustomField($groupByCustomField, $response['settlementBatchSummary']['records']); } return self::_verifyGatewayResponse($response); }
function testGatewayAll_returnsAllPlans() { $newId = strval(rand()); $params = array("id" => $newId, "billingDayOfMonth" => "1", "billingFrequency" => "1", "currencyIsoCode" => "USD", "description" => "some description", "name" => "php test plan", "numberOfBillingCycles" => "1", "price" => "1.00", "trialPeriod" => "false"); $http = new Braintree_Http(Braintree_Configuration::$global); $path = Braintree_Configuration::$global->merchantPath() . "/plans/create_plan_for_tests"; $http->post($path, array("plan" => $params)); $gateway = new Braintree_Gateway(array('environment' => 'development', 'merchantId' => 'integration_merchant_id', 'publicKey' => 'integration_public_key', 'privateKey' => 'integration_private_key')); $plans = $gateway->plan()->all(); foreach ($plans as $plan) { if ($plan->id == $newId) { $actualPlan = $plan; } } $this->assertNotNull($actualPlan); $this->assertEquals($params["billingDayOfMonth"], $actualPlan->billingDayOfMonth); $this->assertEquals($params["billingFrequency"], $actualPlan->billingFrequency); $this->assertEquals($params["currencyIsoCode"], $actualPlan->currencyIsoCode); $this->assertEquals($params["description"], $actualPlan->description); $this->assertEquals($params["name"], $actualPlan->name); $this->assertEquals($params["numberOfBillingCycles"], $actualPlan->numberOfBillingCycles); $this->assertEquals($params["price"], $actualPlan->price); }
function testSearch_daysPastDue() { $creditCard = Braintree_SubscriptionTestHelper::createCreditCard(); $triallessPlan = Braintree_SubscriptionTestHelper::triallessPlan(); $subscription = Braintree_Subscription::create(array('paymentMethodToken' => $creditCard->token, 'planId' => $triallessPlan['id']))->subscription; Braintree_Http::put('/subscriptions/' . $subscription->id . '/make_past_due', array('daysPastDue' => 5)); $found = false; $collection = Braintree_Subscription::search(array(Braintree_SubscriptionSearch::daysPastDue()->between(2, 10))); foreach ($collection as $item) { $found = true; $this->assertTrue($item->daysPastDue <= 10); $this->assertTrue($item->daysPastDue >= 2); } $this->assertTrue($found); }
function testAll_returnsAllDiscounts() { $newId = strval(rand()); $discountParams = array("amount" => "100.00", "description" => "some description", "id" => $newId, "kind" => "discount", "name" => "php_discount", "neverExpires" => "false", "numberOfBillingCycles" => "1"); Braintree_Http::post("/modifications/create_modification_for_tests", array("modification" => $discountParams)); $discounts = Braintree_Discount::all(); foreach ($discounts as $discount) { if ($discount->id == $newId) { $actualDiscount = $discount; } } $this->assertNotNull($actualDiscount); $this->assertEquals($discountParams["amount"], $actualDiscount->amount); $this->assertEquals($discountParams["description"], $actualDiscount->description); $this->assertEquals($discountParams["id"], $actualDiscount->id); $this->assertEquals($discountParams["kind"], $actualDiscount->kind); $this->assertEquals($discountParams["name"], $actualDiscount->name); $this->assertFalse($actualDiscount->neverExpires); $this->assertEquals($discountParams["numberOfBillingCycles"], $actualDiscount->numberOfBillingCycles); }
public static function escrow($transactionId) { Braintree_Http::put('/transactions/' . $transactionId . '/escrow'); }
private static function _doUpdate($url, $params) { $response = Braintree_Http::put($url, $params); return self::_verifyGatewayResponse($response); }
public static function delete($token) { self::_validateId($token); Braintree_Http::delete('/payment_methods/paypal_account/' . $token); return new Braintree_Result_Successful(); }
function testRetryCharge_WithAmount() { $subscription = Braintree_SubscriptionTestHelper::createSubscription(); $http = new Braintree_Http(Braintree_Configuration::$global); $path = Braintree_Configuration::$global->merchantPath() . '/subscriptions/' . $subscription->id . '/make_past_due'; $http->put($path); $result = Braintree_Subscription::retryCharge($subscription->id, 1000); $this->assertTrue($result->success); $transaction = $result->transaction; $this->assertEquals(1000, $transaction->amount); $this->assertNotNull($transaction->processorAuthorizationCode); $this->assertEquals(Braintree_Transaction::SALE, $transaction->type); $this->assertEquals(Braintree_Transaction::AUTHORIZED, $transaction->status); }
function test_rangeNode_settledAt() { $transaction = Braintree_Transaction::saleNoValidate(array('amount' => '1000.00', 'creditCard' => array('number' => '4111111111111111', 'expirationDate' => '05/12'), 'options' => array('submitForSettlement' => true))); Braintree_Http::put('/transactions/' . $transaction->id . '/settle'); $transaction = Braintree_Transaction::find($transaction->id); $twenty_min_ago = date_create("now -20 minutes", new DateTimeZone("UTC")); $ten_min_ago = date_create("now -10 minutes", new DateTimeZone("UTC")); $ten_min_from_now = date_create("now +10 minutes", new DateTimeZone("UTC")); $collection = Braintree_Transaction::search(array(Braintree_TransactionSearch::id()->is($transaction->id), Braintree_TransactionSearch::settledAt()->between($twenty_min_ago, $ten_min_ago))); $this->assertEquals(0, $collection->maximumCount()); $collection = Braintree_Transaction::search(array(Braintree_TransactionSearch::id()->is($transaction->id), Braintree_TransactionSearch::settledAt()->between($ten_min_ago, $ten_min_from_now))); $this->assertEquals(1, $collection->maximumCount()); $this->assertEquals($transaction->id, $collection->firstItem()->id); }
public static function create3DSVerification($merchantAccountId, $params) { $http = new Braintree_Http(Braintree_Configuration::$global); $path = Braintree_Configuration::$global->merchantPath() . '/three_d_secure/create_verification/' . $merchantAccountId; $response = $http->post($path, array('threeDSecureVerification' => $params)); return $response['threeDSecureVerification']['threeDSecureToken']; }
public static function cancel($subscriptionId) { $response = Braintree_Http::put('/subscriptions/' . $subscriptionId . '/cancel'); return self::_verifyGatewayResponse($response); }
public static function all() { $response = Braintree_Http::get('/plans'); $plans = array("plan" => $response['plans']); return Braintree_Util::extractAttributeAsArray($plans, 'plan'); }
/** * sends the generate request to the gateway * * @ignore * @param var $url * @param array $params * @return mixed */ public function _doGenerate($subPath, $params) { $fullPath = $this->_config->merchantPath() . $subPath; $response = $this->_http->post($fullPath, $params); return $this->_verifyGatewayResponse($response); }
function testRetryCharge_WithAmount() { $subscription = Braintree_SubscriptionTestHelper::createSubscription(); Braintree_Http::put('/subscriptions/' . $subscription->id . '/make_past_due'); $result = Braintree_Subscription::retryCharge($subscription->id, 1000); $this->assertTrue($result->success); $transaction = $result->transaction; $this->assertEquals(1000, $transaction->amount); $this->assertNotNull($transaction->processorAuthorizationCode); $this->assertEquals(Braintree_Transaction::SALE, $transaction->type); $this->assertEquals(Braintree_Transaction::AUTHORIZED, $transaction->status); }
public static function all() { $response = Braintree_Http::get('/add_ons'); $addOns = array("addOn" => $response['addOns']); return Braintree_Util::extractAttributeAsArray($addOns, 'addOn'); }
public static function create3DSVerification($merchantAccountId, $params) { $response = Braintree_Http::post('/three_d_secure/create_verification/' . $merchantAccountId, array('threeDSecureVerification' => $params)); return $response['threeDSecureVerification']['threeDSecureToken']; }
public static function all() { $response = Braintree_Http::get('/discounts'); $discounts = array("discount" => $response['discounts']); return Braintree_Util::extractAttributeAsArray($discounts, 'discount'); }
/** * sends the create request to the gateway * * @ignore * @param var $url * @param array $params * @return mixed */ public static function _doCreate($url, $params) { $response = Braintree_Http::post($url, $params); return self::_verifyGatewayResponse($response); }
public static function settle($transactionId) { Braintree_Http::put('/transactions/' . $transactionId . '/settle'); }