From 146c9fd9472d23939de37f20b851b11dc784c926 Mon Sep 17 00:00:00 2001 From: James Cole Date: Thu, 5 Jul 2018 19:02:22 +0200 Subject: [PATCH] Fix unit tests. --- .../TransactionRules/Triggers/HasNoBudgetTest.php | 12 ++++++++---- .../Triggers/ToAccountStartsTest.php | 6 ++++-- 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/tests/Unit/TransactionRules/Triggers/HasNoBudgetTest.php b/tests/Unit/TransactionRules/Triggers/HasNoBudgetTest.php index f1eb119f9e..7ede15cd6b 100644 --- a/tests/Unit/TransactionRules/Triggers/HasNoBudgetTest.php +++ b/tests/Unit/TransactionRules/Triggers/HasNoBudgetTest.php @@ -37,7 +37,7 @@ class HasNoBudgetTest extends TestCase */ public function testTriggeredBudget(): void { - $journal = TransactionJournal::inRandomOrder()->where('transaction_type_id', 1)->whereNull('deleted_at')->first(); + $journal = $this->user()->transactionJournals()->inRandomOrder()->where('transaction_type_id', 1)->whereNull('deleted_at')->first(); $budget = $journal->user->budgets()->first(); $journal->budgets()->detach(); $journal->budgets()->save($budget); @@ -54,7 +54,7 @@ class HasNoBudgetTest extends TestCase public function testTriggeredNoBudget(): void { /** @var TransactionJournal $journal */ - $journal = TransactionJournal::inRandomOrder()->where('transaction_type_id', 1)->whereNull('deleted_at')->first(); + $journal = $this->user()->transactionJournals()->inRandomOrder()->where('transaction_type_id', 1)->whereNull('deleted_at')->first(); $journal->budgets()->detach(); /** @var Transaction $transaction */ foreach ($journal->transactions as $transaction) { @@ -72,8 +72,12 @@ class HasNoBudgetTest extends TestCase */ public function testTriggeredTransaction(): void { - /** @var TransactionJournal $journal */ - $journal = TransactionJournal::inRandomOrder()->where('transaction_type_id', 1)->whereNull('deleted_at')->first(); + $loopCount = 0; + do { + $journal = $this->user()->transactionJournals()->inRandomOrder()->whereNull('deleted_at')->first(); + $count = $journal->transactions()->count(); + } while ($loopCount < 30 && $count !== 2); + $transactions = $journal->transactions()->get(); $budget = $journal->user->budgets()->first(); diff --git a/tests/Unit/TransactionRules/Triggers/ToAccountStartsTest.php b/tests/Unit/TransactionRules/Triggers/ToAccountStartsTest.php index 6e468b368d..09bb15cadc 100644 --- a/tests/Unit/TransactionRules/Triggers/ToAccountStartsTest.php +++ b/tests/Unit/TransactionRules/Triggers/ToAccountStartsTest.php @@ -50,7 +50,7 @@ class ToAccountStartsTest extends TestCase Log::debug(sprintf('Journal with id #%d', $journal->id)); Log::debug(sprintf('Count of transactions is %d', $count)); Log::debug(sprintf('Account is null: %s', var_export(null === $account, true))); - } while ($loopCount < 30 && $count !== 2 && null !== $account); + } while ($loopCount < 30 && $count !== 1 && null !== $account); $trigger = ToAccountStarts::makeFromStrings(substr($account->name, 0, -3), false); @@ -63,6 +63,7 @@ class ToAccountStartsTest extends TestCase */ public function testTriggeredLonger(): void { + Log::debug('Now in testTriggeredLonger'); $loopCount = 0; $account = null; do { @@ -74,7 +75,8 @@ class ToAccountStartsTest extends TestCase Log::debug(sprintf('Journal with id #%d', $journal->id)); Log::debug(sprintf('Count of transactions is %d', $count)); Log::debug(sprintf('Account is null: %s', var_export(null === $account, true))); - } while ($loopCount < 30 && $count !== 2 && null !== $account); + } while ($loopCount < 30 && $count !== 1 && null !== $account); + Log::debug(sprintf('Loop has ended. loopCount is %d', $loopCount)); $trigger = ToAccountStarts::makeFromStrings('bla-bla-bla' . $account->name, false); $result = $trigger->triggered($journal);