Fix test coverage.

This commit is contained in:
James Cole
2019-08-17 12:08:09 +02:00
parent 1d4434698e
commit b53cbbe469
16 changed files with 83 additions and 213 deletions

View File

@@ -27,6 +27,7 @@ use FireflyIII\Models\Account;
use FireflyIII\Models\Budget; use FireflyIII\Models\Budget;
use FireflyIII\Models\Category; use FireflyIII\Models\Category;
use FireflyIII\Models\TransactionType; use FireflyIII\Models\TransactionType;
use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface;
use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface;
use Illuminate\Support\Collection; use Illuminate\Support\Collection;
use Log; use Log;
@@ -97,11 +98,24 @@ class PopupReport implements PopupReportInterface
*/ */
public function byBudget(Budget $budget, array $attributes): array public function byBudget(Budget $budget, array $attributes): array
{ {
// filter by currency, if set.
$currencyId = $attributes['currencyId'] ?? null;
$currency = null;
if (null !== $currencyId) {
/** @var CurrencyRepositoryInterface $repos */
$repos = app(CurrencyRepositoryInterface::class);
$currency = $repos->find((int)$currencyId);
}
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts($attributes['accounts'])->setRange($attributes['startDate'], $attributes['endDate']); $collector->setAccounts($attributes['accounts'])->setRange($attributes['startDate'], $attributes['endDate']);
if (null !== $currency) {
$collector->setCurrency($currency);
}
if (null === $budget->id) { if (null === $budget->id) {
$collector->setTypes([TransactionType::WITHDRAWAL])->withoutBudget(); $collector->setTypes([TransactionType::WITHDRAWAL])->withoutBudget();
} }
@@ -122,12 +136,25 @@ class PopupReport implements PopupReportInterface
*/ */
public function byCategory(Category $category, array $attributes): array public function byCategory(Category $category, array $attributes): array
{ {
// filter by currency, if set.
$currencyId = $attributes['currencyId'] ?? null;
$currency = null;
if (null !== $currencyId) {
/** @var CurrencyRepositoryInterface $repos */
$repos = app(CurrencyRepositoryInterface::class);
$currency = $repos->find((int)$currencyId);
}
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts($attributes['accounts'])->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER]) $collector->setAccounts($attributes['accounts'])
->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER, TransactionType::DEPOSIT])
->setRange($attributes['startDate'], $attributes['endDate'])->withAccountInformation() ->setRange($attributes['startDate'], $attributes['endDate'])->withAccountInformation()
->setCategory($category); ->setCategory($category);
if (null !== $currency) {
$collector->setCurrency($currency);
}
return $collector->getExtractedJournals(); return $collector->getExtractedJournals();
} }
@@ -142,6 +169,15 @@ class PopupReport implements PopupReportInterface
*/ */
public function byExpenses(Account $account, array $attributes): array public function byExpenses(Account $account, array $attributes): array
{ {
// filter by currency, if set.
$currencyId = $attributes['currencyId'] ?? null;
$currency = null;
if (null !== $currencyId) {
/** @var CurrencyRepositoryInterface $repos */
$repos = app(CurrencyRepositoryInterface::class);
$currency = $repos->find((int)$currencyId);
}
/** @var JournalRepositoryInterface $repository */ /** @var JournalRepositoryInterface $repository */
$repository = app(JournalRepositoryInterface::class); $repository = app(JournalRepositoryInterface::class);
$repository->setUser($account->user); $repository->setUser($account->user);
@@ -149,20 +185,15 @@ class PopupReport implements PopupReportInterface
/** @var GroupCollectorInterface $collector */ /** @var GroupCollectorInterface $collector */
$collector = app(GroupCollectorInterface::class); $collector = app(GroupCollectorInterface::class);
$collector->setAccounts(new Collection([$account]))->setRange($attributes['startDate'], $attributes['endDate']) $collector->setAccounts(new Collection([$account]))
->setRange($attributes['startDate'], $attributes['endDate'])
->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER]); ->setTypes([TransactionType::WITHDRAWAL, TransactionType::TRANSFER]);
$journals = $collector->getExtractedJournals();
$report = $attributes['accounts']->pluck('id')->toArray(); // accounts used in this report
$filtered = []; if (null !== $currency) {
// TODO not sure if filter is necessary. $collector->setCurrency($currency);
/** @var array $journal */
foreach ($journals as $journal) {
if (in_array($journal['source_account_id'], $report, true)) {
$filtered[] = $journal;
} }
}
return $filtered; return $collector->getExtractedJournals();
} }
/** /**

View File

@@ -69,9 +69,6 @@ class ReportController extends Controller
case 'category-entry': case 'category-entry':
$html = $this->categoryEntry($attributes); $html = $this->categoryEntry($attributes);
break; break;
case 'balance-amount':
$html = $this->balanceAmount($attributes);
break;
} }
return response()->json(['html' => $html]); return response()->json(['html' => $html]);

View File

@@ -59,13 +59,13 @@ class BalanceController extends Controller
$helper = app(BalanceReportHelperInterface::class); $helper = app(BalanceReportHelperInterface::class);
$report = $helper->getBalanceReport($accounts, $start, $end); $report = $helper->getBalanceReport($accounts, $start, $end);
// TODO no budget. // TODO no budget.
// try { try {
$result = view('reports.partials.balance', compact('report'))->render(); $result = view('reports.partials.balance', compact('report'))->render();
// @codeCoverageIgnoreStart // @codeCoverageIgnoreStart
// } catch (Throwable $e) { } catch (Throwable $e) {
// Log::debug(sprintf('Could not render reports.partials.balance: %s', $e->getMessage())); Log::debug(sprintf('Could not render reports.partials.balance: %s', $e->getMessage()));
// $result = 'Could not render view.'; $result = 'Could not render view.';
// } }
// @codeCoverageIgnoreEnd // @codeCoverageIgnoreEnd
$cache->store($result); $cache->store($result);

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace FireflyIII\Support\Http\Controllers; namespace FireflyIII\Support\Http\Controllers;
use FireflyIII\Helpers\Collection\BalanceLine;
use FireflyIII\Helpers\Report\PopupReportInterface; use FireflyIII\Helpers\Report\PopupReportInterface;
use FireflyIII\Models\AccountType; use FireflyIII\Models\AccountType;
use FireflyIII\Models\Budget; use FireflyIII\Models\Budget;
@@ -76,56 +75,6 @@ trait RenderPartialViews
return $result; return $result;
} }
/**
* View for balance row.
*
* @param array $attributes
*
* @return string
*
*
*/
protected function balanceAmount(array $attributes): string // generate view for report.
{
$role = (int)$attributes['role'];
/** @var BudgetRepositoryInterface $budgetRepository */
$budgetRepository = app(BudgetRepositoryInterface::class);
/** @var AccountRepositoryInterface $accountRepository */
$accountRepository = app(AccountRepositoryInterface::class);
/** @var PopupReportInterface $popupHelper */
$popupHelper = app(PopupReportInterface::class);
$budget = $budgetRepository->findNull((int)$attributes['budgetId']);
$account = $accountRepository->findNull((int)$attributes['accountId']);
switch (true) {
case BalanceLine::ROLE_DEFAULTROLE === $role && null !== $budget && null !== $account:
// normal row with a budget:
$journals = $popupHelper->balanceForBudget($budget, $account, $attributes);
break;
case BalanceLine::ROLE_DEFAULTROLE === $role && null === $budget && null !== $account:
// normal row without a budget:
$budget = new Budget;
$journals = $popupHelper->balanceForNoBudget($account, $attributes);
$budget->name = (string)trans('firefly.no_budget');
break;
case BalanceLine::ROLE_TAGROLE === $role:
// row with tag info.
return 'Firefly cannot handle this type of info-button (BalanceLine::TagRole)';
}
// @codeCoverageIgnoreStart
try {
$view = view('popup.report.balance-amount', compact('journals', 'budget', 'account'))->render();
} catch (Throwable $e) {
Log::error(sprintf('Could not render: %s', $e->getMessage()));
$view = 'Firefly III could not render the view. Please see the log files.';
}
// @codeCoverageIgnoreEnd
return $view;
}
/** /**
* Get options for budget report. * Get options for budget report.

View File

@@ -1029,7 +1029,7 @@ return [
'fiscal_year' => 'Fiscal year', 'fiscal_year' => 'Fiscal year',
'income_entry' => 'Income from account ":name" between :start and :end', 'income_entry' => 'Income from account ":name" between :start and :end',
'expense_entry' => 'Expenses to account ":name" between :start and :end', 'expense_entry' => 'Expenses to account ":name" between :start and :end',
'category_entry' => 'Expenses in category ":name" between :start and :end', 'category_entry' => 'Expenses and income in category ":name" between :start and :end',
'budget_spent_amount' => 'Expenses in budget ":budget" between :start and :end', 'budget_spent_amount' => 'Expenses in budget ":budget" between :start and :end',
'balance_amount' => 'Expenses in budget ":budget" paid from account ":account" between :start and :end', 'balance_amount' => 'Expenses in budget ":budget" paid from account ":account" between :start and :end',
'no_audit_activity' => 'No activity was recorded on account <a href=":url" title=":account_name">:account_name</a> between :start and :end.', 'no_audit_activity' => 'No activity was recorded on account <a href=":url" title=":account_name">:account_name</a> between :start and :end.',

View File

@@ -25,9 +25,12 @@
<tbody> <tbody>
{# Make sum: #} {# Make sum: #}
{% set sum = 0 %} {% set sum = 0 %}
{% set symbol = '' %}
{% set decimal_places =2 %}
{% for transaction in journals %} {% for transaction in journals %}
{# add to sum #} {# add to sum #}
{% set symbol = transaction.currency_symbol %}
{% set decimal_places = transaction.currency_decimal_places %}
<tr class="drag" data-date="{{ transaction.date.format('Y-m-d') }}" data-id="{{ transaction.journal_id }}"> <tr class="drag" data-date="{{ transaction.date.format('Y-m-d') }}" data-id="{{ transaction.journal_id }}">
<td class="hidden-xs"> <td class="hidden-xs">
{% if transaction.transaction_type_type == 'Withdrawal' %} {% if transaction.transaction_type_type == 'Withdrawal' %}
@@ -134,8 +137,9 @@
<tr> <tr>
<td colspan="2" style="text-align: right;"><em>{{ 'sum'|_ }}:</em></td> <td colspan="2" style="text-align: right;"><em>{{ 'sum'|_ }}:</em></td>
<td> <td>
{# TODO avoid using formatAmount #} {% if sum != 0 %}
{{ sum|formatAmount }} {{ formatAmountBySymbol(sum, symbol, decimal_places) }}
{% endif %}
</td> </td>
</tr> </tr>
</tfoot> </tfoot>

View File

@@ -9,11 +9,6 @@
<div class="modal-body"> <div class="modal-body">
{% set hideBudget = true %} {% set hideBudget = true %}
{% include 'popup/list/journals' %} {% include 'popup/list/journals' %}
<p>
<small class="text-warning">
{{ 'sum_in_default_currency'|_ }}
</small>
</p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-default" data-dismiss="modal">{{ 'close'|_ }}</button> <button type="button" class="btn btn-default" data-dismiss="modal">{{ 'close'|_ }}</button>

View File

@@ -22,6 +22,9 @@
{% if budget.spent[account.id] %} {% if budget.spent[account.id] %}
<td style="text-align: right;"> <td style="text-align: right;">
{{ formatAmountBySymbol(budget.spent[account.id].spent, budget.spent[account.id].currency_symbol, budget.spent[account.id].currency_decimal_places) }} {{ formatAmountBySymbol(budget.spent[account.id].spent, budget.spent[account.id].currency_symbol, budget.spent[account.id].currency_decimal_places) }}
<i class="fa fa-fw fa-info-circle text-muted"></i>
{# TODO #}
{#data-location="category-entry" data-category-id="{{ category.id }}" data-currency-id="{{ category.currency_id }}"-->#}
</td> </td>
{% else %} {% else %}
{% if report.accounts[account.id].sum != 0 %} {% if report.accounts[account.id].sum != 0 %}
@@ -32,7 +35,7 @@
{% endfor %} {% endfor %}
<td style="text-align: right;"> <td style="text-align: right;">
{% for sum in report.sums[budget.budget_id] %} {% for sum in report.sums[budget.budget_id] %}
{{ formatAmountBySymbol(sum.sum, sum.currency_symbol, sum.currency_decimal_places) }}<br /> {{ formatAmountBySymbol(sum.sum, sum.currency_symbol, sum.currency_decimal_places) }} <i class="fa fa-fw fa-info-circle text-muted"></i><br />
{% endfor %} {% endfor %}
</td> </td>
</tr> </tr>

View File

@@ -2,8 +2,8 @@
<thead> <thead>
<tr> <tr>
<th>{{ 'category'|_ }}</th> <th>{{ 'category'|_ }}</th>
<th style="text-align: right;">{{ 'earned'|_ }}</th>
<th style="text-align: right;">{{ 'spent'|_ }}</th> <th style="text-align: right;">{{ 'spent'|_ }}</th>
<th style="text-align: right;">{{ 'earned'|_ }}</th>
<th>&nbsp;</th> <th>&nbsp;</th>
</tr> </tr>
</thead> </thead>
@@ -22,7 +22,7 @@
<td style="text-align: right;">{{ formatAmountBySymbol(category.earned, category.currency_symbol, category.currency_decimal_places, true) }}</td> <td style="text-align: right;">{{ formatAmountBySymbol(category.earned, category.currency_symbol, category.currency_decimal_places, true) }}</td>
<td style="width:20px;"> <td style="width:20px;">
<i class="fa fa-fw fa-info-circle text-muted firefly-info-button" <i class="fa fa-fw fa-info-circle text-muted firefly-info-button"
data-location="category-entry" data-category-id="{{ category.id }}" data-location="category-entry" data-category-id="{{ category.id }}" data-currency-id="{{ category.currency_id }}"
></i> ></i>
</td> </td>
</tr> </tr>

View File

@@ -26,8 +26,8 @@
<td data-value="{{ account.sum }}" style="text-align: right;"> <td data-value="{{ account.sum }}" style="text-align: right;">
{{ formatAmountBySymbol(account.sum, account.currency_symbol, account.currency_decimal_places) }} {{ formatAmountBySymbol(account.sum, account.currency_symbol, account.currency_decimal_places) }}
</td> </td>
<td class="hidden-xs" data-value="{{ entry.average }}" style="text-align: right;"> <td class="hidden-xs" data-value="{{ account.average }}" style="text-align: right;">
{% if entry.count > 1 %} {% if account.count > 1 %}
{{ formatAmountBySymbol(account.average, account.currency_symbol, account.currency_decimal_places) }} {{ formatAmountBySymbol(account.average, account.currency_symbol, account.currency_decimal_places) }}
{% else %} {% else %}
&mdash; &mdash;
@@ -35,7 +35,7 @@
</td> </td>
<td> <td>
<i class="fa fa-fw text-muted fa-info-circle firefly-info-button" data-location="{{ type }}" <i class="fa fa-fw text-muted fa-info-circle firefly-info-button" data-location="{{ type }}"
data-account-id="{{ account.id }}"></i> data-account-id="{{ account.id }}" data-currency-id="{{ account.currency_id }}"></i>
</td> </td>
</tr> </tr>
{% endfor %} {% endfor %}

View File

@@ -107,119 +107,6 @@ class ReportControllerTest extends TestCase
$response->assertDontSee('Firefly III could not render the view. Please see the log files.'); $response->assertDontSee('Firefly III could not render the view. Please see the log files.');
} }
/**
* @covers \FireflyIII\Http\Controllers\Popup\ReportController
*/
public function testBalanceAmountDefaultNoBudget(): void
{
$this->mockDefaultSession();
$this->mock(CategoryRepositoryInterface::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class);
$budgetRepos = $this->mock(BudgetRepositoryInterface::class);
$popupHelper = $this->mock(PopupReportInterface::class);
$account = $this->getRandomAsset();
$popupHelper->shouldReceive('balanceForNoBudget')->andReturn([]);
$budgetRepos->shouldReceive('findNull')->andReturn(null)->once()->withArgs([0]);
$accountRepos->shouldReceive('findNull')->andReturn($account)->once()->withArgs([1]);
//$popupHelper->shouldReceive('balanceForBudget')->once()->andReturn([]);
Amount::shouldReceive('formatAnything')->andReturn('-100');
$this->be($this->user());
$arguments = [
'attributes' => [
'location' => 'balance-amount',
'startDate' => Carbon::now()->startOfMonth()->format('Ymd'),
'endDate' => Carbon::now()->endOfMonth()->format('Ymd'),
'accounts' => 1,
'accountId' => 1,
'categoryId' => 1,
'budgetId' => 0,
'role' => 1, // ROLE_DEFAULTROLE
],
];
$uri = route('popup.general') . '?' . http_build_query($arguments);
$response = $this->get($uri);
$response->assertStatus(200);
$response->assertSee($account->name);
$response->assertDontSee('Firefly III could not render the view. Please see the log files.');
}
/**
* @covers \FireflyIII\Http\Controllers\Popup\ReportController
*/
public function testBalanceAmountDefaultRole(): void
{
$this->mock(CategoryRepositoryInterface::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class);
$budgetRepos = $this->mock(BudgetRepositoryInterface::class);
$popupHelper = $this->mock(PopupReportInterface::class);
$account = $this->getRandomAsset();
$budget = $this->getRandomBudget();
$this->mockDefaultSession();
Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once();
$budgetRepos->shouldReceive('findNull')->andReturn($budget)->once()->withArgs([1]);
$accountRepos->shouldReceive('findNull')->andReturn($account)->once()->withArgs([1]);
$popupHelper->shouldReceive('balanceForBudget')->once()->andReturn([]);
$this->be($this->user());
$arguments = [
'attributes' => [
'location' => 'balance-amount',
'startDate' => Carbon::now()->startOfMonth()->format('Ymd'),
'endDate' => Carbon::now()->endOfMonth()->format('Ymd'),
'accounts' => 1,
'accountId' => 1,
'categoryId' => 1,
'budgetId' => 1,
'role' => 1, // ROLE_DEFAULTROLE
],
];
$uri = route('popup.general') . '?' . http_build_query($arguments);
$response = $this->get($uri);
$response->assertStatus(200);
$response->assertDontSee('Firefly III could not render the view. Please see the log files.');
}
/**
* @covers \FireflyIII\Http\Controllers\Popup\ReportController
*/
public function testBalanceAmountTagRole(): void
{
$categoryRepos = $this->mock(CategoryRepositoryInterface::class);
$accountRepos = $this->mock(AccountRepositoryInterface::class);
$budgetRepos = $this->mock(BudgetRepositoryInterface::class);
$popupReport = $this->mock(PopupReportInterface::class);
$account = $this->getRandomAsset();
$budget = $this->getRandomBudget();
$this->mockDefaultSession();
$budgetRepos->shouldReceive('findNull')->andReturn($budget)->once()->withArgs([1]);
$accountRepos->shouldReceive('findNull')->andReturn($account)->once()->withArgs([1]);
$this->be($this->user());
$arguments = [
'attributes' => [
'location' => 'balance-amount',
'startDate' => Carbon::now()->startOfMonth()->format('Ymd'),
'endDate' => Carbon::now()->endOfMonth()->format('Ymd'),
'accounts' => 1,
'accountId' => 1,
'categoryId' => 1,
'budgetId' => 1,
'role' => 2, // ROLE_TAGROLE
],
];
$uri = route('popup.general') . '?' . http_build_query($arguments);
$response = $this->get($uri);
$response->assertStatus(200);
$response->assertDontSee('Firefly III could not render the view. Please see the log files.');
}
/** /**
* @covers \FireflyIII\Http\Controllers\Popup\ReportController * @covers \FireflyIII\Http\Controllers\Popup\ReportController
*/ */
@@ -235,7 +122,7 @@ class ReportControllerTest extends TestCase
$budgetRepos->shouldReceive('findNull')->andReturn($budget)->once()->withArgs([1]); $budgetRepos->shouldReceive('findNull')->andReturn($budget)->once()->withArgs([1]);
$popupHelper->shouldReceive('byBudget')->andReturn([]); $popupHelper->shouldReceive('byBudget')->andReturn([]);
Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once(); //Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once();
$this->be($this->user()); $this->be($this->user());
$arguments = [ $arguments = [
@@ -245,6 +132,7 @@ class ReportControllerTest extends TestCase
'endDate' => Carbon::now()->endOfMonth()->format('Ymd'), 'endDate' => Carbon::now()->endOfMonth()->format('Ymd'),
'accounts' => 1, 'accounts' => 1,
'accountId' => 1, 'accountId' => 1,
'currencyId' => 1,
'categoryId' => 1, 'categoryId' => 1,
'budgetId' => 1, 'budgetId' => 1,
], ],
@@ -265,7 +153,7 @@ class ReportControllerTest extends TestCase
$budgetRepos = $this->mock(BudgetRepositoryInterface::class); $budgetRepos = $this->mock(BudgetRepositoryInterface::class);
$popupHelper = $this->mock(PopupReportInterface::class); $popupHelper = $this->mock(PopupReportInterface::class);
Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once(); //Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once();
$this->mockDefaultSession(); $this->mockDefaultSession();
$budgetRepos->shouldReceive('findNull')->andReturnNull()->once()->withArgs([1]); $budgetRepos->shouldReceive('findNull')->andReturnNull()->once()->withArgs([1]);
@@ -303,7 +191,8 @@ class ReportControllerTest extends TestCase
$this->mockDefaultSession(); $this->mockDefaultSession();
$categoryRepos->shouldReceive('findNull')->andReturn($category)->once()->withArgs([1]); $categoryRepos->shouldReceive('findNull')->andReturn($category)->once()->withArgs([1]);
$popupHelper->shouldReceive('byCategory')->andReturn([]); $popupHelper->shouldReceive('byCategory')->andReturn([]);
Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once();
//Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once();
$this->be($this->user()); $this->be($this->user());
$arguments = [ $arguments = [
@@ -369,7 +258,7 @@ class ReportControllerTest extends TestCase
$accountRepos = $this->mock(AccountRepositoryInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class);
$account = $this->getRandomAsset(); $account = $this->getRandomAsset();
Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once(); //Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once();
$this->mockDefaultSession(); $this->mockDefaultSession();
$accountRepos->shouldReceive('findNull')->withArgs([1])->andReturn($account)->once(); $accountRepos->shouldReceive('findNull')->withArgs([1])->andReturn($account)->once();
@@ -443,7 +332,8 @@ class ReportControllerTest extends TestCase
$this->mockDefaultSession(); $this->mockDefaultSession();
$accountRepos->shouldReceive('findNull')->withArgs([1])->andReturn($account)->once(); $accountRepos->shouldReceive('findNull')->withArgs([1])->andReturn($account)->once();
$popupHelper->shouldReceive('byIncome')->andReturn([]); $popupHelper->shouldReceive('byIncome')->andReturn([]);
Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once();
//Amount::shouldReceive('formatAnything')->andReturn('-100')->atLeast()->once();
$this->be($this->user()); $this->be($this->user());
$arguments = [ $arguments = [

View File

@@ -23,7 +23,6 @@ declare(strict_types=1);
namespace Tests\Feature\Controllers\Report; namespace Tests\Feature\Controllers\Report;
use Carbon\Carbon; use Carbon\Carbon;
use FireflyIII\Helpers\Collection\Balance;
use FireflyIII\Helpers\Fiscal\FiscalHelperInterface; use FireflyIII\Helpers\Fiscal\FiscalHelperInterface;
use FireflyIII\Helpers\Report\BalanceReportHelperInterface; use FireflyIII\Helpers\Report\BalanceReportHelperInterface;
use Log; use Log;
@@ -62,7 +61,7 @@ class BalanceControllerTest extends TestCase
Preferences::shouldReceive('lastActivity')->atLeast()->once()->andReturn('md512345'); Preferences::shouldReceive('lastActivity')->atLeast()->once()->andReturn('md512345');
$fiscalHelper->shouldReceive('endOfFiscalYear')->atLeast()->once()->andReturn($date); $fiscalHelper->shouldReceive('endOfFiscalYear')->atLeast()->once()->andReturn($date);
$fiscalHelper->shouldReceive('startOfFiscalYear')->atLeast()->once()->andReturn($date); $fiscalHelper->shouldReceive('startOfFiscalYear')->atLeast()->once()->andReturn($date);
$balance->shouldReceive('getBalanceReport')->andReturn(new Balance); $balance->shouldReceive('getBalanceReport')->andReturn([]);
$this->be($this->user()); $this->be($this->user());
$response = $this->get(route('report-data.balance.general', ['1', '20120101', '20120131'])); $response = $this->get(route('report-data.balance.general', ['1', '20120101', '20120131']));

View File

@@ -63,7 +63,7 @@ class BudgetControllerTest extends TestCase
$date = new Carbon; $date = new Carbon;
Preferences::shouldReceive('lastActivity')->atLeast()->once()->andReturn('md512345'); Preferences::shouldReceive('lastActivity')->atLeast()->once()->andReturn('md512345');
Amount::shouldReceive('formatAnything')->atLeast()->once()->andReturn('x'); //Amount::shouldReceive('formatAnything')->atLeast()->once()->andReturn('x');
$fiscalHelper->shouldReceive('endOfFiscalYear')->atLeast()->once()->andReturn($date); $fiscalHelper->shouldReceive('endOfFiscalYear')->atLeast()->once()->andReturn($date);
$fiscalHelper->shouldReceive('startOfFiscalYear')->atLeast()->once()->andReturn($date); $fiscalHelper->shouldReceive('startOfFiscalYear')->atLeast()->once()->andReturn($date);
$helper->shouldReceive('getBudgetReport')->andReturn($return); $helper->shouldReceive('getBudgetReport')->andReturn($return);

View File

@@ -112,11 +112,12 @@ class CategoryControllerTest extends TestCase
$fiscalHelper = $this->mock(FiscalHelperInterface::class); $fiscalHelper = $this->mock(FiscalHelperInterface::class);
$date = new Carbon; $date = new Carbon;
Preferences::shouldReceive('lastActivity')->atLeast()->once()->andReturn('md512345'); Preferences::shouldReceive('lastActivity')->atLeast()->once()->andReturn('md512345');
//Amount::shouldReceive('formatAnything')->atLeast()->once()->andReturn('x');
$fiscalHelper->shouldReceive('endOfFiscalYear')->atLeast()->once()->andReturn($date); $fiscalHelper->shouldReceive('endOfFiscalYear')->atLeast()->once()->andReturn($date);
$fiscalHelper->shouldReceive('startOfFiscalYear')->atLeast()->once()->andReturn($date); $fiscalHelper->shouldReceive('startOfFiscalYear')->atLeast()->once()->andReturn($date);
$repository->shouldReceive('getCategories')->andReturn(new Collection([$category])); $repository->shouldReceive('getCategories')->andReturn(new Collection([$category]));
$repository->shouldReceive('spentInPeriod')->andReturn('-1'); $repository->shouldReceive('spentInPeriod')->andReturn([]);
$repository->shouldReceive('earnedInPeriod')->andReturn('1'); $repository->shouldReceive('earnedInPeriod')->andReturn([]);
$this->be($this->user()); $this->be($this->user());

View File

@@ -104,6 +104,7 @@ class OperationsControllerTest extends TestCase
{ {
$this->mockDefaultSession(); $this->mockDefaultSession();
$return = [ $return = [
'sums' => [],
1 => [ 1 => [
'id' => 1, 'id' => 1,
'name' => 'Some name', 'name' => 'Some name',

View File

@@ -137,7 +137,7 @@ class SelectControllerTest extends TestCase
$matcher->shouldReceive('setTriggeredLimit')->withArgs([10])->andReturnSelf()->once(); $matcher->shouldReceive('setTriggeredLimit')->withArgs([10])->andReturnSelf()->once();
$matcher->shouldReceive('setSearchLimit')->withArgs([200])->andReturnSelf()->once(); $matcher->shouldReceive('setSearchLimit')->withArgs([200])->andReturnSelf()->once();
$matcher->shouldReceive('setTriggers')->andReturnSelf()->once(); $matcher->shouldReceive('setTriggers')->andReturnSelf()->once();
$matcher->shouldReceive('findTransactionsByTriggers')->andReturn(new Collection); $matcher->shouldReceive('findTransactionsByTriggers')->andReturn([]);
$this->be($this->user()); $this->be($this->user());
$uri = route('rules.test-triggers') . '?' . http_build_query($data); $uri = route('rules.test-triggers') . '?' . http_build_query($data);
@@ -206,7 +206,7 @@ class SelectControllerTest extends TestCase
$matcher->shouldReceive('setTriggeredLimit')->withArgs([10])->andReturnSelf()->once(); $matcher->shouldReceive('setTriggeredLimit')->withArgs([10])->andReturnSelf()->once();
$matcher->shouldReceive('setSearchLimit')->withArgs([200])->andReturnSelf()->once(); $matcher->shouldReceive('setSearchLimit')->withArgs([200])->andReturnSelf()->once();
$matcher->shouldReceive('setTriggers')->andReturnSelf()->once(); $matcher->shouldReceive('setTriggers')->andReturnSelf()->once();
$matcher->shouldReceive('findTransactionsByTriggers')->andReturn(new Collection); $matcher->shouldReceive('findTransactionsByTriggers')->andReturn([]);
$this->be($this->user()); $this->be($this->user());
$uri = route('rules.test-triggers') . '?' . http_build_query($data); $uri = route('rules.test-triggers') . '?' . http_build_query($data);