From 5ce35a50c25f3c8b538fde693366bf2a0ef7deda Mon Sep 17 00:00:00 2001 From: James Cole Date: Sat, 31 Mar 2018 21:05:06 +0200 Subject: [PATCH] Make sure tests work. --- .env.testing | 2 +- .../Controllers/AccountControllerTest.php | 19 +++++++++++-------- .../Controllers/HomeControllerTest.php | 6 ++++++ .../Controllers/ProfileControllerTest.php | 4 ++++ .../Transaction/SplitControllerTest.php | 14 ++++++++++++++ .../Console/Commands/CreateImportTest.php | 2 ++ 6 files changed, 38 insertions(+), 9 deletions(-) diff --git a/.env.testing b/.env.testing index 4b34af2d4e..04b6a2b328 100644 --- a/.env.testing +++ b/.env.testing @@ -58,7 +58,7 @@ MAIL_PASSWORD=null MAIL_ENCRYPTION=null # Firefly III can send you the following messages -SEND_REGISTRATION_MAIL=false +SEND_REGISTRATION_MAIL=true SEND_ERROR_MESSAGE=false diff --git a/tests/Feature/Controllers/AccountControllerTest.php b/tests/Feature/Controllers/AccountControllerTest.php index 2234820e49..4070de576b 100644 --- a/tests/Feature/Controllers/AccountControllerTest.php +++ b/tests/Feature/Controllers/AccountControllerTest.php @@ -37,10 +37,11 @@ use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use Illuminate\Pagination\LengthAwarePaginator; use Illuminate\Support\Collection; use Log; +use Mockery; use Preferences; use Steam; use Tests\TestCase; -use Mockery; + /** * Class AccountControllerTest * @@ -142,12 +143,12 @@ class AccountControllerTest extends TestCase $accountRepos->shouldReceive('getNote')->andReturn($note)->once(); $accountRepos->shouldReceive('getOpeningBalanceAmount')->andReturnNull(); $accountRepos->shouldReceive('getOpeningBalanceDate')->andReturnNull(); - $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(),'currency_id'])->andReturn('1'); - $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(),'accountNumber'])->andReturn('123'); - $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(),'accountRole'])->andReturn('defaultAsset'); - $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(),'ccType'])->andReturn(''); - $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(),'ccMonthlyPaymentDate'])->andReturn(''); - $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(),'BIC'])->andReturn('BIC'); + $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'currency_id'])->andReturn('1'); + $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'accountNumber'])->andReturn('123'); + $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'accountRole'])->andReturn('defaultAsset'); + $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'ccType'])->andReturn(''); + $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'ccMonthlyPaymentDate'])->andReturn(''); + $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'BIC'])->andReturn('BIC'); $this->be($this->user()); $account = $this->user()->accounts()->where('account_type_id', 3)->whereNull('deleted_at')->first(); @@ -175,7 +176,9 @@ class AccountControllerTest extends TestCase $journalRepos = $this->mock(JournalRepositoryInterface::class); $currencyRepos = $this->mock(CurrencyRepositoryInterface::class); $repository->shouldReceive('getAccountsByType')->andReturn(new Collection([$account])); + $repository->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'currency_id'])->andReturn('1'); $journalRepos->shouldReceive('first')->once()->andReturn(new TransactionJournal); + $currencyRepos->shouldReceive('findNull')->withArgs([1])->andReturn(TransactionCurrency::find(1)); Steam::shouldReceive('balancesByAccounts')->andReturn([$account->id => '100']); Steam::shouldReceive('getLastActivities')->andReturn([]); @@ -241,7 +244,7 @@ class AccountControllerTest extends TestCase public function testShowBrokenBadDates() { // mock - $journalRepos = $this->mock(JournalRepositoryInterface::class); + $journalRepos = $this->mock(JournalRepositoryInterface::class); $journalRepos->shouldReceive('first')->once()->andReturn(new TransactionJournal); $currencyRepos = $this->mock(CurrencyRepositoryInterface::class); $this->session(['start' => '2018-01-01', 'end' => '2017-12-01']); diff --git a/tests/Feature/Controllers/HomeControllerTest.php b/tests/Feature/Controllers/HomeControllerTest.php index 5b7fd374f4..c2d1001481 100644 --- a/tests/Feature/Controllers/HomeControllerTest.php +++ b/tests/Feature/Controllers/HomeControllerTest.php @@ -22,12 +22,15 @@ declare(strict_types=1); namespace Tests\Feature\Controllers; +use FireflyIII\Models\TransactionCurrency; +use Mockery; use FireflyIII\Helpers\Collector\JournalCollectorInterface; use FireflyIII\Models\Account; use FireflyIII\Models\AccountType; use FireflyIII\Models\TransactionJournal; use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Bill\BillRepositoryInterface; +use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use Illuminate\Support\Collection; use Log; @@ -141,11 +144,14 @@ class HomeControllerTest extends TestCase $accountRepos = $this->mock(AccountRepositoryInterface::class); $billRepos = $this->mock(BillRepositoryInterface::class); $journalRepos = $this->mock(JournalRepositoryInterface::class); + $currencyRepos = $this->mock(CurrencyRepositoryInterface::class); $journalRepos->shouldReceive('first')->once()->andReturn(new TransactionJournal); $accountRepos->shouldReceive('count')->andReturn(1); + $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'currency_id'])->andReturn('1'); $accountRepos->shouldReceive('getAccountsByType')->withArgs([[AccountType::DEFAULT, AccountType::ASSET]])->andReturn(new Collection([$account])); $accountRepos->shouldReceive('getAccountsById')->andReturn(new Collection([$account])); $billRepos->shouldReceive('getBills')->andReturn(new Collection); + $currencyRepos->shouldReceive('findNull')->withArgs([1])->andReturn(TransactionCurrency::find(1)); $collector->shouldReceive('setAccounts')->andReturnSelf(); $collector->shouldReceive('setRange')->andReturnSelf(); diff --git a/tests/Feature/Controllers/ProfileControllerTest.php b/tests/Feature/Controllers/ProfileControllerTest.php index 796d2657b9..4183b48054 100644 --- a/tests/Feature/Controllers/ProfileControllerTest.php +++ b/tests/Feature/Controllers/ProfileControllerTest.php @@ -382,6 +382,10 @@ class ProfileControllerTest extends TestCase $newToken = Preference::where('user_id', $this->user()->id)->where('name', 'access_token')->first(); $this->assertNotEquals($newToken->data, $token); + // reset token for later test: + $newToken->data = 'token'; + $newToken->save(); + } /** diff --git a/tests/Feature/Controllers/Transaction/SplitControllerTest.php b/tests/Feature/Controllers/Transaction/SplitControllerTest.php index b28328766f..9c8ea08428 100644 --- a/tests/Feature/Controllers/Transaction/SplitControllerTest.php +++ b/tests/Feature/Controllers/Transaction/SplitControllerTest.php @@ -25,6 +25,7 @@ namespace Tests\Feature\Controllers\Transaction; use FireflyIII\Helpers\Attachments\AttachmentHelperInterface; use FireflyIII\Models\AccountType; use FireflyIII\Models\Transaction; +use FireflyIII\Models\TransactionCurrency; use FireflyIII\Models\TransactionJournal; use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Bill\BillRepositoryInterface; @@ -35,6 +36,7 @@ use FireflyIII\Repositories\RuleGroup\RuleGroupRepositoryInterface; use Illuminate\Support\Collection; use Illuminate\Support\MessageBag; use Log; +use Mockery; use Tests\TestCase; /** @@ -71,6 +73,10 @@ class SplitControllerTest extends TestCase $journalRepos = $this->mock(JournalRepositoryInterface::class); $attHelper = $this->mock(AttachmentHelperInterface::class); + $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'currency_id'])->andReturn('1'); + $currencyRepository->shouldReceive('findNull')->withArgs([1])->andReturn(TransactionCurrency::find(1)); + + $deposit = TransactionJournal::where('transaction_type_id', 2)->where('user_id', $this->user()->id)->first(); $destination = $deposit->transactions()->where('amount', '>', 0)->first(); @@ -124,6 +130,10 @@ class SplitControllerTest extends TestCase $account = $destination->account; $transactions = factory(Transaction::class, 3)->make(); + $accountRepos->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'currency_id'])->andReturn('1'); + $currencyRepository->shouldReceive('findNull')->withArgs([1])->andReturn(TransactionCurrency::find(1)); + + $currencyRepository->shouldReceive('get')->once()->andReturn(new Collection); $budgetRepository->shouldReceive('getActiveBudgets')->andReturn(new Collection); @@ -243,6 +253,10 @@ class SplitControllerTest extends TestCase $destination = $deposit->transactions()->where('amount', '>', 0)->first(); $account = $destination->account; + $accountRepository->shouldReceive('getMetaValue')->withArgs([Mockery::any(), 'currency_id'])->andReturn('1'); + $currencyRepository->shouldReceive('findNull')->withArgs([1])->andReturn(TransactionCurrency::find(1)); + + $journalRepos->shouldReceive('first')->once()->andReturn($deposit); $journalRepos->shouldReceive('getJournalSourceAccounts')->andReturn(new Collection([$account])); $journalRepos->shouldReceive('getJournalDestinationAccounts')->andReturn(new Collection([$account])); diff --git a/tests/Unit/Console/Commands/CreateImportTest.php b/tests/Unit/Console/Commands/CreateImportTest.php index 161639c766..757a68be70 100644 --- a/tests/Unit/Console/Commands/CreateImportTest.php +++ b/tests/Unit/Console/Commands/CreateImportTest.php @@ -71,6 +71,8 @@ class CreateImportTest extends TestCase $routine->shouldReceive('getJournals')->once()->andReturn(new Collection()); $routine->shouldReceive('getLines')->once()->andReturn(7); + + Storage::fake('upload'); $output = $this->artisan(