Fix tests.

This commit is contained in:
James Cole
2018-07-20 16:28:54 +02:00
parent 2d66a9212f
commit 49ff6febe5
14 changed files with 789 additions and 582 deletions

View File

@@ -25,7 +25,7 @@ namespace Tests\Unit\TransactionRules\Triggers;
use FireflyIII\Models\TransactionJournal;
use FireflyIII\TransactionRules\Triggers\FromAccountIs;
use Tests\TestCase;
use Log;
/**
* Class FromAccountIsTest
*/
@@ -36,13 +36,21 @@ class FromAccountIsTest extends TestCase
*/
public function testTriggered(): void
{
$count = 0;
while ($count === 0) {
$journal = TransactionJournal::inRandomOrder()->whereNull('deleted_at')->first();
$count = $journal->transactions()->where('amount', '<', 0)->count();
$loops = 0; // FINAL LOOP METHOD.
do {
/** @var TransactionJournal $journal */
$journal = $this->user()->transactionJournals()->inRandomOrder()->whereNull('deleted_at')->first();
$transaction = $journal->transactions()->where('amount', '<', 0)->first();
}
$account = $transaction->account;
$account = $transaction->account;
$count = $journal->transactions()->count();
Log::debug(sprintf('Loop: %d, transaction count: %d, account is null: %d', $loops, $count, (int)null===$account));
$loops++;
// do this until: account is not null, journal has two transactions, loops is below 30
} while (!(null !== $account && 2 === $count && $loops < 30));
$trigger = FromAccountIs::makeFromStrings($account->name, false);
$result = $trigger->triggered($journal);