. */ declare(strict_types=1); namespace Tests\Feature\Controllers\Account; use FireflyIII\Models\Account; use FireflyIII\Models\Transaction; use FireflyIII\Models\TransactionCurrency; use FireflyIII\Models\TransactionJournal; use FireflyIII\Repositories\Account\AccountRepositoryInterface; use FireflyIII\Repositories\Currency\CurrencyRepositoryInterface; use FireflyIII\Repositories\Journal\JournalRepositoryInterface; use Illuminate\Support\Collection; use Log; use Mockery; use Tests\TestCase; /** * Class ConfigurationControllerTest */ class ReconcileControllerTest extends TestCase { /** * */ public function setUp(): void { parent::setUp(); Log::debug(sprintf('Now in %s.', \get_class($this))); } /** * Test editing a reconciliation. * * @covers \FireflyIII\Http\Controllers\Account\ReconcileController */ public function testEdit(): void { $repository = $this->mock(JournalRepositoryInterface::class); $journal = $this->user()->transactionJournals()->where('transaction_type_id', 5)->first(); $transaction = $journal->transactions()->where('amount', '>', 0)->first(); $repository->shouldReceive('firstNull')->andReturn($journal); $repository->shouldReceive('getFirstPosTransaction')->andReturn($transaction); $repository->shouldReceive('getJournalDate')->andReturn('2018-01-01'); $repository->shouldReceive('getJournalCategoryName')->andReturn(''); $repository->shouldReceive('getJournalBudgetid')->andReturn(0); $this->be($this->user()); $response = $this->get(route('accounts.reconcile.edit', [$journal->id])); $response->assertStatus(200); // has bread crumb $response->assertSee('