Update code, work to pass filters. [skip ci]

This commit is contained in:
James Cole 2014-07-21 16:41:00 +02:00
parent 92cf059102
commit 61438bf5f1
6 changed files with 41 additions and 17 deletions

View File

@ -13,17 +13,19 @@ class ChartController extends BaseController
protected $_accounts; protected $_accounts;
protected $_journals; protected $_journals;
protected $_tk;
protected $_preferences; protected $_preferences;
/** /**
* @param ARI $accounts * @param ARI $accounts
* @param TJRI $journals * @param TJRI $journals
*/ */
public function __construct(ARI $accounts, TJRI $journals, PHI $preferences) public function __construct(ARI $accounts, TJRI $journals, PHI $preferences, tk $toolkit)
{ {
$this->_accounts = $accounts; $this->_accounts = $accounts;
$this->_journals = $journals; $this->_journals = $journals;
$this->_preferences = $preferences; $this->_preferences = $preferences;
$this->_tk = $toolkit;
} }
/** /**
@ -33,7 +35,7 @@ class ChartController extends BaseController
*/ */
public function homeAccount($accountId = null) public function homeAccount($accountId = null)
{ {
list($start, $end) = tk::getDateRange(); list($start, $end) = $this->_tk->getDateRange();
$current = clone $start; $current = clone $start;
$return = []; $return = [];
$account = null; $account = null;
@ -134,7 +136,7 @@ class ChartController extends BaseController
public function homeCategories() public function homeCategories()
{ {
list($start, $end) = tk::getDateRange(); list($start, $end) =$this->_tk->getDateRange();
$account = null; $account = null;
$result = []; $result = [];
// grab all transaction journals in this period: // grab all transaction journals in this period:

View File

@ -5,7 +5,8 @@
App::before( App::before(
function ($request) { function ($request) {
if (Auth::check()) { if (Auth::check()) {
\Firefly\Helper\Toolkit\Toolkit::getDateRange(); $toolkit = App::make('\Firefly\Helper\Toolkit\ToolkitInterface');
$toolkit->getDateRange();
} }
Event::fire('app.before'); Event::fire('app.before');
} }

View File

@ -14,7 +14,7 @@ class Toolkit implements ToolkitInterface
* *
* $start is always the past, $end is 'now' or at least later. * $start is always the past, $end is 'now' or at least later.
*/ */
public static function getDateRange() public function getDateRange()
{ {
$preferences = \App::make('Firefly\Helper\Preferences\PreferencesHelperInterface'); $preferences = \App::make('Firefly\Helper\Preferences\PreferencesHelperInterface');
$viewRange = $preferences->get('viewRange', '1M'); $viewRange = $preferences->get('viewRange', '1M');

View File

@ -5,6 +5,6 @@ namespace Firefly\Helper\Toolkit;
interface ToolkitInterface interface ToolkitInterface
{ {
public static function getDateRange(); public function getDateRange();
} }

View File

@ -89,18 +89,26 @@ class ChartControllerTest extends TestCase
$start = new \Carbon\Carbon; $start = new \Carbon\Carbon;
$end = new \Carbon\Carbon; $end = new \Carbon\Carbon;
// mock toolkit
$toolkit = $this->mock('Firefly\Helper\Toolkit\ToolkitInterface'); $toolkit = $this->mock('Firefly\Helper\Toolkit\ToolkitInterface');
$toolkit->shouldReceive('getDateRange')->andReturn(null); $toolkit->shouldReceive('getDateRange')->andReturn([$start, $end]);
// mock toolkit:
// $class = $this->getMockClass('Foo', array('baz'));
// $toolkit = $this->mock('Firefly\Helper\Toolkit\ToolkitInterface');
// $toolkit::static ->shouldReceive('getDateRange')->once()->andReturn([$start, $end]);
// // mock transaction journal
// $tj = $this->mock('Firefly\Storage\TransactionJournal\TransactionJournalRepositoryInterface');
// $tj->shouldReceive('getByDateRange')->with($start, $end)->andReturn([]);
// //
// // mock preference?
// $preferences = $this->mock('Firefly\Helper\Preferences\PreferencesHelperInterface');
// $preferences->shouldReceive('get')->with('viewRange', '1M')->once()->andReturn($pref);
//
//
// // mock toolkit:
//// $class = $this->getMockClass('Foo', array('baz'));
//// $toolkit = $this->mock('Firefly\Helper\Toolkit\ToolkitInterface');
//// $toolkit::static ->shouldReceive('getDateRange')->once()->andReturn([$start, $end]);
//
//// // mock transaction journal
//// $tj = $this->mock('Firefly\Storage\TransactionJournal\TransactionJournalRepositoryInterface');
//// $tj->shouldReceive('getByDateRange')->with($start, $end)->andReturn([]);
////

View File

@ -13,12 +13,25 @@ class HomeControllerTest extends TestCase
View::shouldReceive('share'); View::shouldReceive('share');
View::shouldReceive('make')->with('index')->once()->andReturn(\Mockery::self()) View::shouldReceive('make')->with('index')->once()->andReturn(\Mockery::self())
->shouldReceive('with')->once() // Pass a 'with' parameter ->shouldReceive('with')->once() // Pass a 'with' parameter
->with('count', 0); ->with('count', 0)->andReturn(\Mockery::self())
->shouldReceive('with')->once() // Pass a 'with' parameter
->with('transactions', [])->andReturn(\Mockery::self());
// pass another
Auth::shouldReceive('check')->andReturn(true); Auth::shouldReceive('check')->andReturn(true);
// mock account repository // mock account repository
$accounts = $this->mock('Firefly\Storage\Account\AccountRepositoryInterface'); $accounts = $this->mock('Firefly\Storage\Account\AccountRepositoryInterface');
$accounts->shouldReceive('count')->andReturn(0); $accounts->shouldReceive('count')->andReturn(0);
$accounts->shouldReceive('getActiveDefault')->andReturn([]);
// mock preferences & pref:
$pref = $this->mock('Preference');
$pref->shouldReceive('getAttribute', 'data')->andReturn([]);
$preferences = $this->mock('Firefly\Helper\Preferences\PreferencesHelperInterface');
$preferences->shouldReceive('get')->with('frontpageAccounts', [])->once()->andReturn($pref);
// call // call
$this->call('GET', '/'); $this->call('GET', '/');