*
 * Cancel user's recurring script
 * @author alxmsl
 */
include __DIR__ . '/../../vendor/autoload.php';
use alxmsl\Cli\CommandPosix;
use alxmsl\Cli\Exception\RequiredOptionException;
use alxmsl\Cli\Option;
use alxmsl\PaymentNinja\Client;
$publicKey = '';
$privateKey = '';
$user = '';
$Command = new CommandPosix();
$Command->appendHelpParameter('show help');
$Command->appendParameter(new Option('private', 'r', 'project private key', Option::TYPE_STRING, true), function ($name, $value) use(&$privateKey) {
    $privateKey = (string) $value;
});
$Command->appendParameter(new Option('public', 'b', 'project public key', Option::TYPE_STRING, true), function ($name, $value) use(&$publicKey) {
    $publicKey = (string) $value;
});
$Command->appendParameter(new Option('user', 'u', 'user identifier', Option::TYPE_STRING, true), function ($name, $value) use(&$user) {
    $user = (string) $value;
});
try {
    $Command->parse(true);
    $Client = new Client($publicKey, $privateKey);
    $Response = $Client->userCancelRecurring($user)->execute();
    printf("%s\n", $Response);
} catch (RequiredOptionException $Ex) {
    $Command->displayHelp();
}
Exemplo n.º 2
0
 public function testUserCancelRecurring()
 {
     $Client = new Client(111, 222);
     $Request = $Client->userCancelRecurring('333');
     $this->assertEquals(['project' => '111', 'user' => '333', 'signature' => 'f68c15c701dd75d0d20436a7b5a4254a5ea8b772e4bd6ddb288269a1522780f3'], $this->getRequestParametersProperty($Request));
 }