added stripe and balanced tests
This commit is contained in:
parent
52e918de79
commit
360bcd81eb
@ -117,7 +117,8 @@
|
||||
<secret>***REMOVED***</secret>
|
||||
</live>
|
||||
<dev>
|
||||
<secret>9d5c3d58fc5e11e1aa05026ba7c1aba6</secret>
|
||||
<secret>***REMOVED***</secret>
|
||||
<uri>/v1/marketplaces/***REMOVED***</uri>
|
||||
</dev>
|
||||
<sharedMerchant>_KEY_</sharedMerchant>
|
||||
</balanced>
|
||||
|
||||
37
include/controllers/default/cockpit/tests/svb/balanced.php
Normal file
37
include/controllers/default/cockpit/tests/svb/balanced.php
Normal file
@ -0,0 +1,37 @@
|
||||
<?php
|
||||
|
||||
class Controller_tests_svb_balanced extends Crunchbutton_Controller_Account {
|
||||
public function init() {
|
||||
switch (c::getPagePiece(3)) {
|
||||
case 'charge':
|
||||
|
||||
$env = 'dev';
|
||||
\Balanced\Settings::$api_key = c::config()->balanced->{$env}->secret;
|
||||
$b = Balanced\Marketplace::mine();
|
||||
|
||||
$account = $b->createBuyer(
|
||||
'session-'.rand(1000,100000000).'@_DOMAIN_',
|
||||
$_REQUEST['card'],
|
||||
[
|
||||
'name' => 'UNIT TEST NAME',
|
||||
'phone' => '4150000000',
|
||||
'address' => ''
|
||||
]
|
||||
);
|
||||
$account->addCard($_REQUEST['card']);
|
||||
|
||||
$charge = $account->debit(100, 'Crunchbutton', 'UNIT TEST');
|
||||
if ($charge->status == 'succeeded') {
|
||||
echo json_encode(['id' => $charge->id]);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
c::view()->display('tests/svb/balanced', false);
|
||||
break;
|
||||
}
|
||||
|
||||
exit;
|
||||
}
|
||||
}
|
||||
9
include/controllers/default/cockpit/tests/svb/index.php
Normal file
9
include/controllers/default/cockpit/tests/svb/index.php
Normal file
@ -0,0 +1,9 @@
|
||||
<?php
|
||||
|
||||
class Controller_tests_svb extends Crunchbutton_Controller_Account {
|
||||
public function init() {
|
||||
c::view()->useFilter(false);
|
||||
c::view()->display('tests/svb', false);
|
||||
exit;
|
||||
}
|
||||
}
|
||||
30
include/controllers/default/cockpit/tests/svb/stripe.php
Normal file
30
include/controllers/default/cockpit/tests/svb/stripe.php
Normal file
@ -0,0 +1,30 @@
|
||||
<?php
|
||||
|
||||
class Controller_tests_svb_stripe extends Crunchbutton_Controller_Account {
|
||||
public function init() {
|
||||
switch (c::getPagePiece(3)) {
|
||||
case 'charge':
|
||||
|
||||
$env = 'dev';
|
||||
Stripe::setApiKey(c::config()->stripe->{$env}->secret);
|
||||
$charge = Stripe_Charge::create([
|
||||
'amount' => 100,
|
||||
'currency' => 'usd',
|
||||
'card' => $_REQUEST['card'],
|
||||
'description' => 'Unit test charge'
|
||||
]);
|
||||
|
||||
if ($charge->paid) {
|
||||
echo json_encode(['id' => $charge->id]);
|
||||
}
|
||||
|
||||
break;
|
||||
|
||||
default:
|
||||
c::view()->display('tests/svb/stripe', false);
|
||||
break;
|
||||
}
|
||||
|
||||
exit;
|
||||
}
|
||||
}
|
||||
69
include/views/default/cockpit/tests/svb/balanced.phtml
Normal file
69
include/views/default/cockpit/tests/svb/balanced.phtml
Normal file
@ -0,0 +1,69 @@
|
||||
<html>
|
||||
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
|
||||
<script type="text/javascript" src="https://js.balancedpayments.com/v1/balanced.js"></script>
|
||||
|
||||
<body>
|
||||
<button class="balanced-test-start">Start</button>
|
||||
<div class="balanced-status"></div>
|
||||
|
||||
<script type="text/javascript">
|
||||
balanced.init('<?=c::config()->balanced->{'dev'}->uri?>');
|
||||
var start, end;
|
||||
|
||||
function responseCallbackHandler(response) {
|
||||
switch (response.status) {
|
||||
case 400:
|
||||
console.log(response.error);
|
||||
break;
|
||||
|
||||
case 404:
|
||||
console.log(response.error);
|
||||
break;
|
||||
|
||||
case 201:
|
||||
console.log(response.data);
|
||||
var cardTokenURI = response.data['uri'];
|
||||
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: '/tests/svb/balanced/charge',
|
||||
data: { card: cardTokenURI },
|
||||
success: function(res) {
|
||||
var j;
|
||||
try {
|
||||
j = JSON.parse(res);
|
||||
} catch (e) {
|
||||
|
||||
}
|
||||
|
||||
if (j && j.id) {
|
||||
end = new Date;
|
||||
console.log('success',j.id);
|
||||
var seconds = (end.getTime() - start.getTime())/1000;
|
||||
start = end = null;
|
||||
console.log('Balanced took ' + seconds + ' seconds');
|
||||
$('.balanced-status').html('completed in ' + seconds + ' seconds');
|
||||
$('.balanced-test-start').removeAttr('disabled');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
var tokenizeInstrument = function(e) {
|
||||
$('.balanced-status').html('running...');
|
||||
$('.balanced-test-start').attr('disabled','disabled');
|
||||
start = new Date;
|
||||
|
||||
var creditCardData = {
|
||||
card_number: '4242424242424242',
|
||||
expiration_month: '12',
|
||||
expiration_year: '2014'
|
||||
};
|
||||
|
||||
balanced.card.create(creditCardData, responseCallbackHandler);
|
||||
};
|
||||
$('.balanced-test-start').click(tokenizeInstrument);
|
||||
|
||||
</script>
|
||||
</html>
|
||||
61
include/views/default/cockpit/tests/svb/stripe.phtml
Normal file
61
include/views/default/cockpit/tests/svb/stripe.phtml
Normal file
@ -0,0 +1,61 @@
|
||||
<html>
|
||||
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
|
||||
<script type="text/javascript" src="https://js.stripe.com/v2/"></script>
|
||||
|
||||
<body>
|
||||
<button class="stripe-test-start">Start</button>
|
||||
<div class="stripe-status"></div>
|
||||
|
||||
<script type="text/javascript">
|
||||
Stripe.setPublishableKey('<?=c::config()->stripe->{'dev'}->{'public'}?>');
|
||||
var start, end;
|
||||
|
||||
function responseCallbackHandler(status, response) {
|
||||
if (response.error) {
|
||||
console.log(response.error);
|
||||
} else {
|
||||
var cardTokenURI = response.id;
|
||||
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: '/tests/svb/stripe/charge',
|
||||
data: { card: cardTokenURI },
|
||||
success: function(res) {
|
||||
var j;
|
||||
try {
|
||||
j = JSON.parse(res);
|
||||
} catch (e) {
|
||||
|
||||
}
|
||||
|
||||
if (j && j.id) {
|
||||
end = new Date;
|
||||
console.log('success',j.id);
|
||||
var seconds = (end.getTime() - start.getTime())/1000;
|
||||
start = end = null;
|
||||
console.log('stripe took ' + seconds + ' seconds');
|
||||
$('.stripe-status').html('completed in ' + seconds + ' seconds');
|
||||
$('.stripe-test-start').removeAttr('disabled');
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
var tokenizeInstrument = function(e) {
|
||||
$('.stripe-status').html('running...');
|
||||
$('.stripe-test-start').attr('disabled','disabled');
|
||||
start = new Date;
|
||||
|
||||
var creditCardData = {
|
||||
number: '4242424242424242',
|
||||
exp_month: '12',
|
||||
exp_year: '2014'
|
||||
};
|
||||
|
||||
Stripe.card.createToken(creditCardData, responseCallbackHandler);
|
||||
};
|
||||
$('.stripe-test-start').click(tokenizeInstrument);
|
||||
|
||||
</script>
|
||||
</html>
|
||||
Loading…
x
Reference in New Issue
Block a user