From 003d07504ff4e5fc6156c9e4b0d49f7781f8a781 Mon Sep 17 00:00:00 2001 From: James Cole Date: Sat, 29 Jun 2019 08:14:28 +0200 Subject: [PATCH] Improve test coverage. --- .../Controllers/Chart/AccountController.php | 2 +- .../Controllers/Chart/BudgetController.php | 2 +- .../Chart/BudgetReportController.php | 1 + .../Controllers/Chart/CategoryController.php | 7 +- .../Chart/CategoryReportController.php | 3 +- .../Chart/ExpenseReportController.php | 5 +- .../Controllers/Chart/PiggyBankController.php | 1 + .../Controllers/Chart/ReportController.php | 1 + .../Controllers/Chart/TagReportController.php | 3 +- app/Support/Http/Controllers/AugumentData.php | 2 +- .../Controllers/TransactionCalculation.php | 4 +- phpunit.coverage.specific.xml | 2 + phpunit.coverage.xml | 2 + phpunit.xml | 2 + .../Chart/BudgetControllerTest.php | 194 ++++++++++-------- .../Chart/BudgetReportControllerTest.php | 62 +++--- .../Chart/CategoryControllerTest.php | 56 ++++- .../Chart/CategoryReportControllerTest.php | 48 +++-- .../Chart/ExpenseReportControllerTest.php | 37 ++-- .../Chart/PiggyBankControllerTest.php | 10 +- .../Chart/ReportControllerTest.php | 15 +- .../Chart/TagReportControllerTest.php | 76 +++---- .../Import/CallbackControllerTest.php | 9 +- .../Import/IndexControllerTest.php | 18 +- .../Import/JobConfigurationControllerTest.php | 28 ++- .../Import/JobStatusControllerTest.php | 48 +++-- .../Import/PrerequisitesControllerTest.php | 12 +- .../Controllers/PiggyBankControllerTest.php | 4 +- .../Recurring/CreateControllerTest.php | 28 +-- .../Controllers/RuleGroupControllerTest.php | 2 +- .../Feature/Controllers/TagControllerTest.php | 4 +- tests/TestCase.php | 22 +- .../Upgrade/MigrateJournalNotesTest.php | 6 +- 33 files changed, 447 insertions(+), 269 deletions(-) diff --git a/app/Http/Controllers/Chart/AccountController.php b/app/Http/Controllers/Chart/AccountController.php index 5335d0b8a5..80987ec48f 100644 --- a/app/Http/Controllers/Chart/AccountController.php +++ b/app/Http/Controllers/Chart/AccountController.php @@ -62,7 +62,7 @@ class AccountController extends Controller /** * AccountController constructor. - * @codeCoverageIgnore + * @codeCoverageIgnore */ public function __construct() { diff --git a/app/Http/Controllers/Chart/BudgetController.php b/app/Http/Controllers/Chart/BudgetController.php index ef36292918..3fe456e5ae 100644 --- a/app/Http/Controllers/Chart/BudgetController.php +++ b/app/Http/Controllers/Chart/BudgetController.php @@ -55,6 +55,7 @@ class BudgetController extends Controller /** * BudgetController constructor. + * @codeCoverageIgnore */ public function __construct() { @@ -297,7 +298,6 @@ class BudgetController extends Controller /** @var GroupCollectorInterface $collector */ $collector = app(GroupCollectorInterface::class); - $collector->setTypes([TransactionType::WITHDRAWAL])->setBudget($budget)->withAccountInformation(); if (null !== $budgetLimit) { $collector->setRange($budgetLimit->start_date, $budgetLimit->end_date); diff --git a/app/Http/Controllers/Chart/BudgetReportController.php b/app/Http/Controllers/Chart/BudgetReportController.php index b2627ef8f1..2d0ee59b49 100644 --- a/app/Http/Controllers/Chart/BudgetReportController.php +++ b/app/Http/Controllers/Chart/BudgetReportController.php @@ -51,6 +51,7 @@ class BudgetReportController extends Controller /** * BudgetReportController constructor. + * @codeCoverageIgnore */ public function __construct() { diff --git a/app/Http/Controllers/Chart/CategoryController.php b/app/Http/Controllers/Chart/CategoryController.php index b91e690b29..ef557369c2 100644 --- a/app/Http/Controllers/Chart/CategoryController.php +++ b/app/Http/Controllers/Chart/CategoryController.php @@ -50,6 +50,7 @@ class CategoryController extends Controller /** * CategoryController constructor. + * @codeCoverageIgnore */ public function __construct() { @@ -106,6 +107,7 @@ class CategoryController extends Controller ], ]; $step = $this->calculateStep($start, $end); + /** @var Carbon $current */ $current = clone $start; Log::debug(sprintf('abc Step is %s', $step)); @@ -124,9 +126,12 @@ class CategoryController extends Controller $current->addDay(); } break; + // @codeCoverageIgnoreStart + // for some reason it doesn't pick up on these case entries. case '1W': case '1M': case '1Y': + // @codeCoverageIgnoreEnd while ($current <= $end) { $currentEnd = app('navigation')->endOfPeriod($current, $step); Log::debug(sprintf('abc Range is %s to %s', $current->format('Y-m-d'), $currentEnd->format('Y-m-d'))); @@ -391,7 +396,7 @@ class CategoryController extends Controller $start = app('navigation')->startOfPeriod($date, $range); $end = session()->get('end'); if ($end < $start) { - [$end, $start] = [$start, $end]; + [$end, $start] = [$start, $end]; // @codeCoverageIgnore } $data = $this->makePeriodChart($category, $start, $end); diff --git a/app/Http/Controllers/Chart/CategoryReportController.php b/app/Http/Controllers/Chart/CategoryReportController.php index ad880ae48b..6ad3b2d009 100644 --- a/app/Http/Controllers/Chart/CategoryReportController.php +++ b/app/Http/Controllers/Chart/CategoryReportController.php @@ -47,6 +47,7 @@ class CategoryReportController extends Controller /** * CategoryReportController constructor. + * @codeCoverageIgnore */ public function __construct() { @@ -285,7 +286,7 @@ class CategoryReportController extends Controller $newSet = []; foreach ($chartData as $key => $entry) { if (0 === !array_sum($entry['entries'])) { - $newSet[$key] = $chartData[$key]; + $newSet[$key] = $chartData[$key]; // @codeCoverageIgnore } } if (0 === count($newSet)) { diff --git a/app/Http/Controllers/Chart/ExpenseReportController.php b/app/Http/Controllers/Chart/ExpenseReportController.php index fd2110201e..e03c592552 100644 --- a/app/Http/Controllers/Chart/ExpenseReportController.php +++ b/app/Http/Controllers/Chart/ExpenseReportController.php @@ -49,6 +49,7 @@ class ExpenseReportController extends Controller /** * ExpenseReportController constructor. + * @codeCoverageIgnore */ public function __construct() { @@ -89,7 +90,7 @@ class ExpenseReportController extends Controller $cache->addProperty($start); $cache->addProperty($end); if ($cache->has()) { - // return response()->json($cache->get()); // @codeCoverageIgnore + return response()->json($cache->get()); // @codeCoverageIgnore } $format = app('navigation')->preferredCarbonLocalizedFormat($start, $end); @@ -185,7 +186,7 @@ class ExpenseReportController extends Controller $newSet = []; foreach ($chartData as $key => $entry) { if (0 === !array_sum($entry['entries'])) { - $newSet[$key] = $chartData[$key]; + $newSet[$key] = $chartData[$key]; // @codeCoverageIgnore } } if (0 === count($newSet)) { diff --git a/app/Http/Controllers/Chart/PiggyBankController.php b/app/Http/Controllers/Chart/PiggyBankController.php index b67a057b4c..fb94165760 100644 --- a/app/Http/Controllers/Chart/PiggyBankController.php +++ b/app/Http/Controllers/Chart/PiggyBankController.php @@ -44,6 +44,7 @@ class PiggyBankController extends Controller /** * PiggyBankController constructor. + * @codeCoverageIgnore */ public function __construct() { diff --git a/app/Http/Controllers/Chart/ReportController.php b/app/Http/Controllers/Chart/ReportController.php index fec7cd9219..07326a3f25 100644 --- a/app/Http/Controllers/Chart/ReportController.php +++ b/app/Http/Controllers/Chart/ReportController.php @@ -46,6 +46,7 @@ class ReportController extends Controller /** * ReportController constructor. + * @codeCoverageIgnore */ public function __construct() { diff --git a/app/Http/Controllers/Chart/TagReportController.php b/app/Http/Controllers/Chart/TagReportController.php index 4a4a46e950..aacf46a64e 100644 --- a/app/Http/Controllers/Chart/TagReportController.php +++ b/app/Http/Controllers/Chart/TagReportController.php @@ -44,6 +44,7 @@ class TagReportController extends Controller /** * TagReportController constructor. + * @codeCoverageIgnore */ public function __construct() { @@ -279,7 +280,7 @@ class TagReportController extends Controller $newSet = []; foreach ($chartData as $key => $entry) { if (0 === !array_sum($entry['entries'])) { - $newSet[$key] = $chartData[$key]; + $newSet[$key] = $chartData[$key]; // @codeCoverageIgnore } } if (0 === count($newSet)) { diff --git a/app/Support/Http/Controllers/AugumentData.php b/app/Support/Http/Controllers/AugumentData.php index 53bb5d1025..dc5b7d912d 100644 --- a/app/Support/Http/Controllers/AugumentData.php +++ b/app/Support/Http/Controllers/AugumentData.php @@ -222,7 +222,7 @@ trait AugumentData protected function filterBudgetLimits(Collection $budgetLimits, Budget $budget, Carbon $start, Carbon $end): Collection // filter data { $set = $budgetLimits->filter( - function (BudgetLimit $budgetLimit) use ($budget, $start, $end) { + static function (BudgetLimit $budgetLimit) use ($budget, $start, $end) { if ($budgetLimit->budget_id === $budget->id && $budgetLimit->start_date->lte($start) // start of budget limit is on or before start && $budgetLimit->end_date->gte($end) // end of budget limit is on or after end diff --git a/app/Support/Http/Controllers/TransactionCalculation.php b/app/Support/Http/Controllers/TransactionCalculation.php index 8fa5949477..d4642e7c2a 100644 --- a/app/Support/Http/Controllers/TransactionCalculation.php +++ b/app/Support/Http/Controllers/TransactionCalculation.php @@ -55,9 +55,7 @@ trait TransactionCalculation ->withAccountInformation() ->setTypes([TransactionType::WITHDRAWAL]); - $result = $collector->getExtractedJournals(); - - return $result; + return $collector->getExtractedJournals(); } /** diff --git a/phpunit.coverage.specific.xml b/phpunit.coverage.specific.xml index 2bd193e356..2665e0bf58 100644 --- a/phpunit.coverage.specific.xml +++ b/phpunit.coverage.specific.xml @@ -49,6 +49,8 @@ ./tests/Feature/Controllers/Admin ./tests/Feature/Controllers/Budget ./tests/Feature/Controllers/Category + ./tests/Feature/Controllers/Chart + ./tests/Feature/Controllers/Import diff --git a/phpunit.coverage.xml b/phpunit.coverage.xml index 5bb3cd9969..2499add904 100644 --- a/phpunit.coverage.xml +++ b/phpunit.coverage.xml @@ -49,6 +49,8 @@ ./tests/Feature/Controllers/Admin ./tests/Feature/Controllers/Budget ./tests/Feature/Controllers/Category + ./tests/Feature/Controllers/Chart + ./tests/Feature/Controllers/Import diff --git a/phpunit.xml b/phpunit.xml index 3faf2448de..6ad538ee36 100644 --- a/phpunit.xml +++ b/phpunit.xml @@ -49,6 +49,8 @@ ./tests/Feature/Controllers/Admin ./tests/Feature/Controllers/Budget ./tests/Feature/Controllers/Category + ./tests/Feature/Controllers/Chart + ./tests/Feature/Controllers/Import