Should fix tests.

This commit is contained in:
James Cole
2017-03-30 18:42:02 +02:00
parent 92cd3d60b9
commit ea984281b0
3 changed files with 70 additions and 34 deletions

View File

@@ -27,6 +27,7 @@ use Illuminate\Support\Collection;
class PopupReport implements PopupReportInterface
{
/**
* @param Budget $budget
* @param Account $account
@@ -44,6 +45,25 @@ class PopupReport implements PopupReportInterface
return $journals;
}
/**
* @param Account $account
* @param array $attributes
*
* @return Collection
*/
public function balanceForNoBudget(Account $account, array $attributes): Collection
{
/** @var JournalCollectorInterface $collector */
$collector = app(JournalCollectorInterface::class);
$collector
->setAccounts(new Collection([$account]))
->setTypes([TransactionType::WITHDRAWAL])
->setRange($attributes['startDate'], $attributes['endDate'])
->withoutBudget();
return $collector->getJournals();
}
/**
* @param Budget $budget
* @param array $attributes
@@ -145,4 +165,35 @@ class PopupReport implements PopupReportInterface
return $journals;
}
/**
* @param $account
* @param $attributes
*
* @return Collection
*/
public function balanceDifference($account, $attributes): Collection
{
// row that displays difference
/** @var JournalCollectorInterface $collector */
$collector = app(JournalCollectorInterface::class);
$collector
->setAccounts(new Collection([$account]))
->setTypes([TransactionType::WITHDRAWAL])
->setRange($attributes['startDate'], $attributes['endDate'])
->withoutBudget();
$journals = $collector->getJournals();
return $journals->filter(
function (Transaction $transaction) {
$tags = $transaction->transactionJournal->tags()->where('tagMode', 'balancingAct')->count();
if ($tags === 0) {
return true;
}
return false;
}
);
}
}