. */ declare(strict_types=1); namespace Tests\Unit\TransactionRules\Actions; use FireflyIII\Models\RuleAction; use FireflyIII\Models\TransactionJournal; use FireflyIII\TransactionRules\Actions\AppendDescription; use FireflyIII\TransactionRules\Actions\PrependDescription; use Tests\TestCase; /** * Class PrependDescriptionTest */ class PrependDescriptionTest extends TestCase { /** * @covers \FireflyIII\TransactionRules\Actions\PrependDescription */ public function testAct(): void { /** @var TransactionJournal $journal */ $journal = $this->user()->transactionJournals()->where('description', 'Rule action test transaction.')->first(); $original = $journal->description; $array = [ 'transaction_journal_id' => $journal->id, 'description' => $original, ]; $ruleAction = new RuleAction; $ruleAction->action_value = 'PREPEND'; $action = new PrependDescription($ruleAction); $result = $action->actOnArray($array); $this->assertTrue($result); $journal = TransactionJournal::find($journal->id); $this->assertEquals(sprintf('%s%s', $ruleAction->action_value, $original), $journal->description); $journal->description = $original; $journal->save(); } }