. */ 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 Tests\TestCase; use Log; /** * Class ConfigurationControllerTest * * @SuppressWarnings(PHPMD.TooManyPublicMethods) * @SuppressWarnings(PHPMD.ExcessiveMethodLength) * @SuppressWarnings(PHPMD.CouplingBetweenObjects) */ class ReconcileControllerTest extends TestCase { /** * */ public function setUp() { parent::setUp(); Log::debug('Now in Feature/Controllers::ReconcileControllerTest.'); } /** * @covers \FireflyIII\Http\Controllers\Account\ReconcileController::edit */ public function testEdit() { $repository = $this->mock(JournalRepositoryInterface::class); $journal = $this->user()->transactionJournals()->where('transaction_type_id', 5)->first(); $transaction = $journal->transactions()->where('amount', '>', 0)->first(); $repository->shouldReceive('first')->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('