mirror of
https://github.com/firefly-iii/firefly-iii.git
synced 2025-01-26 16:26:35 -06:00
Finally fixed the tests.
This commit is contained in:
parent
ebb28df607
commit
eed70cdb62
@ -68,8 +68,7 @@ class ChartController extends BaseController
|
||||
// loop and get array data.
|
||||
|
||||
$url = count($accounts) == 1 && is_array($accounts)
|
||||
? '<a href="' . route('accounts.show', [$account->id]) . '">View more</a>'
|
||||
:
|
||||
? '<a href="' . route('accounts.show', [$account->id]) . '">View more</a>' :
|
||||
'<a href="' . route('accounts.index') . '">View more</a>';
|
||||
$data = [
|
||||
'chart_title' => count($accounts) == 1 ? $accounts[0]->name : 'All accounts',
|
||||
@ -85,8 +84,9 @@ class ChartController extends BaseController
|
||||
return Response::json($data);
|
||||
}
|
||||
|
||||
public function homeAccountInfo(Account $account, $day, $month, $year)
|
||||
public function homeAccountInfo($name, $day, $month, $year)
|
||||
{
|
||||
$account = $this->_accounts->findByName($name);
|
||||
|
||||
$date = Carbon::createFromDate($year, $month, $day);
|
||||
$result = $this->_chart->accountDailySummary($account, $date);
|
||||
|
@ -1,6 +1,5 @@
|
||||
<?php
|
||||
use Firefly\Helper\Preferences\PreferencesHelperInterface as PHI;
|
||||
use Firefly\Helper\Toolkit\ToolkitInterface as Toolkit;
|
||||
use Firefly\Storage\Account\AccountRepositoryInterface as ARI;
|
||||
use Firefly\Storage\Budget\BudgetRepositoryInterface as BRI;
|
||||
use Firefly\Storage\TransactionJournal\TransactionJournalRepositoryInterface as TJRI;
|
||||
@ -14,27 +13,34 @@ class HomeController extends BaseController
|
||||
protected $_preferences;
|
||||
protected $_journal;
|
||||
protected $_budgets;
|
||||
protected $_tk;
|
||||
|
||||
/**
|
||||
* @param ARI $accounts
|
||||
* @param PHI $preferences
|
||||
* @param TJRI $journal
|
||||
* @param Toolkit $toolkit
|
||||
* @param BRI $budgets
|
||||
*/
|
||||
public function __construct(ARI $accounts, PHI $preferences, TJRI $journal, Toolkit $toolkit, BRI $budgets)
|
||||
public function __construct(ARI $accounts, PHI $preferences, TJRI $journal, BRI $budgets)
|
||||
{
|
||||
$this->_accounts = $accounts;
|
||||
$this->_preferences = $preferences;
|
||||
$this->_journal = $journal;
|
||||
$this->_tk = $toolkit;
|
||||
$this->_budgets = $budgets;
|
||||
View::share('menu', 'home');
|
||||
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function flush()
|
||||
{
|
||||
Cache::flush();
|
||||
|
||||
return Redirect::route('index');
|
||||
}
|
||||
|
||||
/**
|
||||
* @return $this|\Illuminate\View\View
|
||||
*/
|
||||
@ -42,7 +48,8 @@ class HomeController extends BaseController
|
||||
{
|
||||
// count, maybe we need some introducing text to show:
|
||||
$count = $this->_accounts->count();
|
||||
list($start, $end) = $this->_tk->getDateRangeDates();
|
||||
$start = Session::get('start');
|
||||
$end = Session::get('end');
|
||||
|
||||
|
||||
// get the preference for the home accounts to show:
|
||||
@ -73,14 +80,4 @@ class HomeController extends BaseController
|
||||
// build the home screen:
|
||||
return View::make('index')->with('count', $count)->with('transactions', $transactions);
|
||||
}
|
||||
|
||||
/**
|
||||
* @return \Illuminate\Http\RedirectResponse
|
||||
*/
|
||||
public function flush()
|
||||
{
|
||||
Cache::flush();
|
||||
|
||||
return Redirect::route('index');
|
||||
}
|
||||
}
|
@ -104,6 +104,9 @@ class Chart implements ChartInterface
|
||||
}]
|
||||
)->orderBy('name', 'ASC')->get();
|
||||
|
||||
$limitInPeriod = 'Envelope for (empty)';
|
||||
$spentInPeriod = 'Spent in (empty)';
|
||||
|
||||
foreach ($budgets as $budget) {
|
||||
$budget->count = 0;
|
||||
foreach ($budget->limits as $limit) {
|
||||
|
@ -1,9 +1,11 @@
|
||||
<?php
|
||||
|
||||
use Carbon\Carbon;
|
||||
use Illuminate\Database\Eloquent\Collection;
|
||||
use Mockery as m;
|
||||
use Zizaco\FactoryMuff\Facade\FactoryMuff as f;
|
||||
|
||||
|
||||
/**
|
||||
* Class ChartControllerTest
|
||||
*/
|
||||
@ -12,6 +14,7 @@ class ChartControllerTest extends TestCase
|
||||
protected $_user;
|
||||
// protected $_repository;
|
||||
protected $_accounts;
|
||||
protected $_charts;
|
||||
|
||||
public function setUp()
|
||||
{
|
||||
@ -19,6 +22,7 @@ class ChartControllerTest extends TestCase
|
||||
Artisan::call('migrate');
|
||||
Artisan::call('db:seed');
|
||||
$this->_accounts = $this->mock('Firefly\Storage\Account\AccountRepositoryInterface');
|
||||
$this->_charts = $this->mock('Firefly\Helper\Controllers\ChartInterface');
|
||||
// $this->_category = $this->mock('Firefly\Helper\Controllers\CategoryInterface');
|
||||
$this->_user = m::mock('User', 'Eloquent');
|
||||
|
||||
@ -39,6 +43,8 @@ class ChartControllerTest extends TestCase
|
||||
Auth::shouldReceive('check')->andReturn(true);
|
||||
$this->_user->shouldReceive('getAttribute')->with('id')->once()->andReturn($category->user_id);
|
||||
|
||||
$this->_charts->shouldReceive('categoryShowChart')->once()->andReturn([]);
|
||||
|
||||
|
||||
$this->action('GET', 'ChartController@categoryShowChart', $category->id);
|
||||
$this->assertResponseOk();
|
||||
@ -47,16 +53,85 @@ class ChartControllerTest extends TestCase
|
||||
public function testHomeAccount()
|
||||
{
|
||||
$account = f::create('Account');
|
||||
$collection = new Collection();
|
||||
$collection->add($account);
|
||||
$this->session(['start' => new Carbon, 'end' => new Carbon, 'range' => '1M']);
|
||||
|
||||
// for successful binding:
|
||||
Auth::shouldReceive('user')->andReturn($this->_user);
|
||||
Auth::shouldReceive('check')->andReturn(true);
|
||||
$this->_user->shouldReceive('getAttribute')->with('id')->once()->andReturn(1);
|
||||
$this->_accounts->shouldReceive('getByIds')->andReturn([$account]);
|
||||
$this->_user->shouldReceive('getAttribute')->with('email')->andReturn('bla@bla');
|
||||
$this->_user->shouldReceive('getAttribute')->with('id')->andReturn(1);
|
||||
$this->_accounts->shouldReceive('getByIds')->andReturn($collection);
|
||||
|
||||
$this->_charts->shouldReceive('account')->once()->andReturn([]);
|
||||
|
||||
|
||||
$this->action('GET', 'ChartController@homeAccount');
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
public function testHomeAccountInfo()
|
||||
{
|
||||
$account = f::create('Account');
|
||||
$type = f::create('AccountType');
|
||||
$type->description = 'Default account';
|
||||
$type->save();
|
||||
$account->accounttype()->associate($type);
|
||||
$account->save();
|
||||
// for successful binding:
|
||||
Auth::shouldReceive('user')->andReturn($account->user()->first());
|
||||
Auth::shouldReceive('check')->andReturn(true);
|
||||
$this->_user->shouldReceive('getAttribute')->with('email')->andReturn('bla@bla');
|
||||
$this->_user->shouldReceive('getAttribute')->with('id')->andReturn($account->user_id);
|
||||
$this->_accounts->shouldReceive('findByName')->andReturn($account);
|
||||
|
||||
$this->_charts->shouldReceive('accountDailySummary')->once()->andReturn(['rows' => [],'sum' => 0]);
|
||||
|
||||
$this->call('GET', 'chart/home/info/' . $account->name . '/01/08/2014');
|
||||
$this->assertResponseOk();
|
||||
|
||||
}
|
||||
|
||||
public function testHomeAccountWithAccount()
|
||||
{
|
||||
$account = f::create('Account');
|
||||
$this->session(['start' => new Carbon, 'end' => new Carbon, 'range' => '1M']);
|
||||
|
||||
// for successful binding:
|
||||
Auth::shouldReceive('user')->andReturn($this->_user);
|
||||
Auth::shouldReceive('check')->andReturn(true);
|
||||
$this->_user->shouldReceive('getAttribute')->with('email')->andReturn('bla@bla');
|
||||
$this->_user->shouldReceive('getAttribute')->with('id')->andReturn($account->user_id);
|
||||
|
||||
$this->_charts->shouldReceive('account')->once()->andReturn([]);
|
||||
|
||||
|
||||
$this->action('GET', 'ChartController@homeAccount', $account->id);
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
public function testHomeBudgets()
|
||||
{
|
||||
$date = new Carbon;
|
||||
$this->session(['start' => $date]);
|
||||
$this->_charts->shouldReceive('budgets')->once()->with($date)->andReturn([]);
|
||||
|
||||
$this->action('GET', 'ChartController@homeBudgets');
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
public function testHomeCategories()
|
||||
{
|
||||
$start = new Carbon;
|
||||
$end = new Carbon;
|
||||
|
||||
$this->_charts->shouldReceive('categories')->once()->with($start, $end)->andReturn([]);
|
||||
|
||||
$this->session(['start' => $start, 'end' => $end]);
|
||||
$this->action('GET', 'ChartController@homeCategories');
|
||||
$this->assertResponseOk();
|
||||
}
|
||||
|
||||
|
||||
}
|
Loading…
Reference in New Issue
Block a user