Skip to content

Commit

Permalink
test: passing
Browse files Browse the repository at this point in the history
  • Loading branch information
frknasir committed Nov 4, 2021
1 parent 4628fff commit 064fe0b
Show file tree
Hide file tree
Showing 7 changed files with 108 additions and 44 deletions.
2 changes: 1 addition & 1 deletion .phpunit.result.cache
Original file line number Diff line number Diff line change
@@ -1 +1 @@
{"version":1,"defects":{"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeCreated":4,"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeUpdated":4,"StarfolkSoftware\\Flutterwave\\Tests\\SubscriptionTest::testSubscriptionsCanBeRetrieved":4,"StarfolkSoftware\\Flutterwave\\Tests\\ChargeTest::testCanPerformTokenizedCharges":4,"StarfolkSoftware\\Flutterwave\\Tests\\TransactionTest::testTransactionsCanBeRetrieved":4},"times":{"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeCreated":0.001,"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlansCanBeRetrieved":0,"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeFound":0.001,"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeCancelled":0.001,"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeUpdated":0.001,"StarfolkSoftware\\Flutterwave\\Tests\\SubscriptionTest::testSubscriptionsCanBeRetrieved":0.001,"StarfolkSoftware\\Flutterwave\\Tests\\SubscriptionTest::testSubscriptionCanBeCancelled":0,"StarfolkSoftware\\Flutterwave\\Tests\\SubscriptionTest::testSubscriptionCanBeActivated":0.001,"StarfolkSoftware\\Flutterwave\\Tests\\ChargeTest::testCanPerformTokenizedCharges":0.001,"StarfolkSoftware\\Flutterwave\\Tests\\ChargeTest::testCanUpdateCustomerToken":0.003,"StarfolkSoftware\\Flutterwave\\Tests\\TransactionTest::testTransactionsCanBeRetrieved":0.077}}
{"version":1,"defects":{"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeCreated":4,"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeUpdated":4,"StarfolkSoftware\\Flutterwave\\Tests\\SubscriptionTest::testSubscriptionsCanBeRetrieved":4,"StarfolkSoftware\\Flutterwave\\Tests\\ChargeTest::testCanPerformTokenizedCharges":4,"StarfolkSoftware\\Flutterwave\\Tests\\TransactionTest::testTransactionsCanBeRetrieved":4,"StarfolkSoftware\\Flutterwave\\Tests\\TransactionTest::testTransactionFeeCanBeRetrieved":4},"times":{"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeCreated":0,"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlansCanBeRetrieved":0,"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeFound":0,"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeCancelled":0,"StarfolkSoftware\\Flutterwave\\Tests\\PlanTest::testPlanCanBeUpdated":0.009,"StarfolkSoftware\\Flutterwave\\Tests\\SubscriptionTest::testSubscriptionsCanBeRetrieved":0,"StarfolkSoftware\\Flutterwave\\Tests\\SubscriptionTest::testSubscriptionCanBeCancelled":0,"StarfolkSoftware\\Flutterwave\\Tests\\SubscriptionTest::testSubscriptionCanBeActivated":0,"StarfolkSoftware\\Flutterwave\\Tests\\ChargeTest::testCanPerformTokenizedCharges":0,"StarfolkSoftware\\Flutterwave\\Tests\\ChargeTest::testCanUpdateCustomerToken":0,"StarfolkSoftware\\Flutterwave\\Tests\\TransactionTest::testTransactionsCanBeRetrieved":0,"StarfolkSoftware\\Flutterwave\\Tests\\TransactionTest::testTransactionFeeCanBeRetrieved":0,"StarfolkSoftware\\Flutterwave\\Tests\\TransactionTest::testWebhookCanBeResent":0,"StarfolkSoftware\\Flutterwave\\Tests\\TransactionTest::testTransactionCanBeVerified":0,"StarfolkSoftware\\Flutterwave\\Tests\\TransactionTest::testTransactionTimelineCanBeRetrieved":0}}
36 changes: 20 additions & 16 deletions build/report.junit.xml
Original file line number Diff line number Diff line change
@@ -1,24 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<testsuites>
<testsuite name="/Users/faruk/Documents/Development/flutterwave-php/tests" tests="11" assertions="11" errors="0" warnings="0" failures="0" skipped="0" time="0.088828">
<testsuite name="StarfolkSoftware\Flutterwave\Tests\TransactionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/TransactionTest.php" tests="1" assertions="1" errors="0" warnings="0" failures="0" skipped="0" time="0.077299">
<testcase name="testTransactionsCanBeRetrieved" class="StarfolkSoftware\Flutterwave\Tests\TransactionTest" classname="StarfolkSoftware.Flutterwave.Tests.TransactionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/TransactionTest.php" line="10" assertions="1" time="0.077299"/>
<testsuite name="/Users/faruk/Documents/Development/flutterwave-php/tests" tests="15" assertions="15" errors="0" warnings="0" failures="0" skipped="0" time="0.013112">
<testsuite name="StarfolkSoftware\Flutterwave\Tests\PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" tests="5" assertions="5" errors="0" warnings="0" failures="0" skipped="0" time="0.010276">
<testcase name="testPlanCanBeUpdated" class="StarfolkSoftware\Flutterwave\Tests\PlanTest" classname="StarfolkSoftware.Flutterwave.Tests.PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" line="48" assertions="1" time="0.008883"/>
<testcase name="testPlanCanBeCreated" class="StarfolkSoftware\Flutterwave\Tests\PlanTest" classname="StarfolkSoftware.Flutterwave.Tests.PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" line="11" assertions="1" time="0.000428"/>
<testcase name="testPlanCanBeFound" class="StarfolkSoftware\Flutterwave\Tests\PlanTest" classname="StarfolkSoftware.Flutterwave.Tests.PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" line="37" assertions="1" time="0.000484"/>
<testcase name="testPlanCanBeCancelled" class="StarfolkSoftware\Flutterwave\Tests\PlanTest" classname="StarfolkSoftware.Flutterwave.Tests.PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" line="62" assertions="1" time="0.000286"/>
<testcase name="testPlansCanBeRetrieved" class="StarfolkSoftware\Flutterwave\Tests\PlanTest" classname="StarfolkSoftware.Flutterwave.Tests.PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" line="26" assertions="1" time="0.000196"/>
</testsuite>
<testsuite name="StarfolkSoftware\Flutterwave\Tests\ChargeTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/ChargeTest.php" tests="2" assertions="2" errors="0" warnings="0" failures="0" skipped="0" time="0.003911">
<testcase name="testCanUpdateCustomerToken" class="StarfolkSoftware\Flutterwave\Tests\ChargeTest" classname="StarfolkSoftware.Flutterwave.Tests.ChargeTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/ChargeTest.php" line="31" assertions="1" time="0.002752"/>
<testcase name="testCanPerformTokenizedCharges" class="StarfolkSoftware\Flutterwave\Tests\ChargeTest" classname="StarfolkSoftware.Flutterwave.Tests.ChargeTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/ChargeTest.php" line="11" assertions="1" time="0.001158"/>
<testsuite name="StarfolkSoftware\Flutterwave\Tests\SubscriptionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/SubscriptionTest.php" tests="3" assertions="3" errors="0" warnings="0" failures="0" skipped="0" time="0.000840">
<testcase name="testSubscriptionCanBeActivated" class="StarfolkSoftware\Flutterwave\Tests\SubscriptionTest" classname="StarfolkSoftware.Flutterwave.Tests.SubscriptionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/SubscriptionTest.php" line="34" assertions="1" time="0.000342"/>
<testcase name="testSubscriptionsCanBeRetrieved" class="StarfolkSoftware\Flutterwave\Tests\SubscriptionTest" classname="StarfolkSoftware.Flutterwave.Tests.SubscriptionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/SubscriptionTest.php" line="10" assertions="1" time="0.000318"/>
<testcase name="testSubscriptionCanBeCancelled" class="StarfolkSoftware\Flutterwave\Tests\SubscriptionTest" classname="StarfolkSoftware.Flutterwave.Tests.SubscriptionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/SubscriptionTest.php" line="23" assertions="1" time="0.000179"/>
</testsuite>
<testsuite name="StarfolkSoftware\Flutterwave\Tests\SubscriptionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/SubscriptionTest.php" tests="3" assertions="3" errors="0" warnings="0" failures="0" skipped="0" time="0.002819">
<testcase name="testSubscriptionCanBeActivated" class="StarfolkSoftware\Flutterwave\Tests\SubscriptionTest" classname="StarfolkSoftware.Flutterwave.Tests.SubscriptionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/SubscriptionTest.php" line="34" assertions="1" time="0.000934"/>
<testcase name="testSubscriptionsCanBeRetrieved" class="StarfolkSoftware\Flutterwave\Tests\SubscriptionTest" classname="StarfolkSoftware.Flutterwave.Tests.SubscriptionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/SubscriptionTest.php" line="10" assertions="1" time="0.001387"/>
<testcase name="testSubscriptionCanBeCancelled" class="StarfolkSoftware\Flutterwave\Tests\SubscriptionTest" classname="StarfolkSoftware.Flutterwave.Tests.SubscriptionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/SubscriptionTest.php" line="23" assertions="1" time="0.000499"/>
<testsuite name="StarfolkSoftware\Flutterwave\Tests\TransactionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/TransactionTest.php" tests="5" assertions="5" errors="0" warnings="0" failures="0" skipped="0" time="0.001255">
<testcase name="testTransactionCanBeVerified" class="StarfolkSoftware\Flutterwave\Tests\TransactionTest" classname="StarfolkSoftware.Flutterwave.Tests.TransactionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/TransactionTest.php" line="53" assertions="1" time="0.000309"/>
<testcase name="testWebhookCanBeResent" class="StarfolkSoftware\Flutterwave\Tests\TransactionTest" classname="StarfolkSoftware.Flutterwave.Tests.TransactionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/TransactionTest.php" line="40" assertions="1" time="0.000189"/>
<testcase name="testTransactionTimelineCanBeRetrieved" class="StarfolkSoftware\Flutterwave\Tests\TransactionTest" classname="StarfolkSoftware.Flutterwave.Tests.TransactionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/TransactionTest.php" line="66" assertions="1" time="0.000176"/>
<testcase name="testTransactionFeeCanBeRetrieved" class="StarfolkSoftware\Flutterwave\Tests\TransactionTest" classname="StarfolkSoftware.Flutterwave.Tests.TransactionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/TransactionTest.php" line="24" assertions="1" time="0.000292"/>
<testcase name="testTransactionsCanBeRetrieved" class="StarfolkSoftware\Flutterwave\Tests\TransactionTest" classname="StarfolkSoftware.Flutterwave.Tests.TransactionTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/TransactionTest.php" line="11" assertions="1" time="0.000290"/>
</testsuite>
<testsuite name="StarfolkSoftware\Flutterwave\Tests\PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" tests="5" assertions="5" errors="0" warnings="0" failures="0" skipped="0" time="0.004799">
<testcase name="testPlanCanBeFound" class="StarfolkSoftware\Flutterwave\Tests\PlanTest" classname="StarfolkSoftware.Flutterwave.Tests.PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" line="37" assertions="1" time="0.001328"/>
<testcase name="testPlanCanBeCreated" class="StarfolkSoftware\Flutterwave\Tests\PlanTest" classname="StarfolkSoftware.Flutterwave.Tests.PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" line="11" assertions="1" time="0.001283"/>
<testcase name="testPlanCanBeCancelled" class="StarfolkSoftware\Flutterwave\Tests\PlanTest" classname="StarfolkSoftware.Flutterwave.Tests.PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" line="62" assertions="1" time="0.000517"/>
<testcase name="testPlanCanBeUpdated" class="StarfolkSoftware\Flutterwave\Tests\PlanTest" classname="StarfolkSoftware.Flutterwave.Tests.PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" line="48" assertions="1" time="0.001175"/>
<testcase name="testPlansCanBeRetrieved" class="StarfolkSoftware\Flutterwave\Tests\PlanTest" classname="StarfolkSoftware.Flutterwave.Tests.PlanTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/PlanTest.php" line="26" assertions="1" time="0.000495"/>
<testsuite name="StarfolkSoftware\Flutterwave\Tests\ChargeTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/ChargeTest.php" tests="2" assertions="2" errors="0" warnings="0" failures="0" skipped="0" time="0.000741">
<testcase name="testCanPerformTokenizedCharges" class="StarfolkSoftware\Flutterwave\Tests\ChargeTest" classname="StarfolkSoftware.Flutterwave.Tests.ChargeTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/ChargeTest.php" line="11" assertions="1" time="0.000448"/>
<testcase name="testCanUpdateCustomerToken" class="StarfolkSoftware\Flutterwave\Tests\ChargeTest" classname="StarfolkSoftware.Flutterwave.Tests.ChargeTest" file="/Users/faruk/Documents/Development/flutterwave-php/tests/ChargeTest.php" line="31" assertions="1" time="0.000293"/>
</testsuite>
</testsuite>
</testsuites>
4 changes: 2 additions & 2 deletions src/API/Transaction.php
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ public function all(TransactionQueryParams $params): array
public function fee(TransactionFeeOptions $options): array
{
$response = $this->httpClient->get('/transactions/fee', [
'query' => $options
'query' => $options->all()
]);

return ResponseMediator::getContent($response);
Expand All @@ -48,7 +48,7 @@ public function fee(TransactionFeeOptions $options): array
*
* @return array
*/
public function resendWebhook(int $id, int $wait = 1): array
public function webhook(int $id, int $wait = 1): array
{
$response = $this->httpClient->post("/transactions/{$id}/resend-webhook", [
'query' => [
Expand Down
30 changes: 17 additions & 13 deletions src/Options/TransactionFeeOptions.php
Original file line number Diff line number Diff line change
Expand Up @@ -16,20 +16,24 @@ final class TransactionFeeOptions extends OptionsAbstract
*/
public function configureOptions(OptionsResolver $resolver): void
{
$resolver->setDefaults([]);
$resolver->define('amount')
->required()
->allowedTypes('int')
->info('The amount of the transaction fee in kobo');

$resolver->setRequired(['amount', 'currency']);
$resolver->define('currency')
->required()
->allowedTypes('string')
->info('The currency of the transaction fee');

$resolver->setAllowedTypes('amount', 'int');
$resolver->setAllowedTypes('currency', 'string');
$resolver->setAllowedTypes('payment_type', 'string');
$resolver->setAllowedValues('payment_type', [
'card',
'debit_ng_account',
'mobilemoney',
'bank_transfer',
'ach_payment'
]);
$resolver->setAllowedTypes('card_first6digits', 'int');
$resolver->define('payment_type')
->default('card')
->allowedTypes('string')
->allowedValues('card', 'debit_ng_account', 'mobilemoney', 'bank_transfer', 'ach_payment')
->info('The payment type of the transaction fee');

$resolver->define('card_first6digits')
->allowedTypes('string')
->info('The first 6 digits of the card used to pay the transaction fee');
}
}
8 changes: 4 additions & 4 deletions tests/ChargeTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ public function testCanPerformTokenizedCharges(): void
"status" => "success",
]))->withStatus(200));

$plan = $this->client()->charge()->withToken(
$charge = $this->client()->charge()->withToken(
new ChargeWithTokenOptions([
'token' => 'abc',
'email' => 'contact@starfolksoftware.com',
Expand All @@ -25,7 +25,7 @@ public function testCanPerformTokenizedCharges(): void
])
);

$this->assertEquals('success', $plan['status']);
$this->assertEquals('success', $charge['status']);
}

public function testCanUpdateCustomerToken(): void
Expand All @@ -34,7 +34,7 @@ public function testCanUpdateCustomerToken(): void
"status" => "success",
]))->withStatus(200));

$plan = $this->client()->charge()->updateCustomerToken(
$charge = $this->client()->charge()->updateCustomerToken(
token: 124343,
options: new UpdateCustomerTokenOptions([
'email' => 'contact@starfolksoftware.com',
Expand All @@ -44,6 +44,6 @@ public function testCanUpdateCustomerToken(): void
])
);

$this->assertEquals('success', $plan['status']);
$this->assertEquals('success', $charge['status']);
}
}
12 changes: 6 additions & 6 deletions tests/SubscriptionTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -13,11 +13,11 @@ public function testSubscriptionsCanBeRetrieved(): void
"status" => "success",
]))->withStatus(200));

$plan = $this->client()->subscription()->all(
$subscription = $this->client()->subscription()->all(
new SubscriptionQueryParams([])
);

$this->assertEquals('success', $plan['status']);
$this->assertEquals('success', $subscription['status']);
}

public function testSubscriptionCanBeCancelled(): void
Expand All @@ -26,9 +26,9 @@ public function testSubscriptionCanBeCancelled(): void
"status" => "success",
]))->withStatus(200));

$plan = $this->client()->subscription()->cancel(1);
$subscription = $this->client()->subscription()->cancel(1);

$this->assertEquals('success', $plan['status']);
$this->assertEquals('success', $subscription['status']);
}

public function testSubscriptionCanBeActivated(): void
Expand All @@ -37,8 +37,8 @@ public function testSubscriptionCanBeActivated(): void
"status" => "success",
]))->withStatus(200));

$plan = $this->client()->subscription()->activate(1);
$subscription = $this->client()->subscription()->activate(1);

$this->assertEquals('success', $plan['status']);
$this->assertEquals('success', $subscription['status']);
}
}
Loading

0 comments on commit 064fe0b

Please sign in to comment.