mock(AYRG::class); $journalRepos = $this->mock(JournalRepositoryInterface::class); $journalRepos->shouldReceive('first')->once()->andReturn(new TransactionJournal); $generator->shouldReceive('setStartDate')->once(); $generator->shouldReceive('setEndDate')->once(); $generator->shouldReceive('setAccounts')->once(); $generator->shouldReceive('generate')->andReturn('here-be-report'); $this->be($this->user()); $response = $this->get(route('reports.report.audit', [1, '20160101', '20160131'])); $response->assertStatus(200); } /** * @covers \FireflyIII\Http\Controllers\ReportController::budgetReport */ public function testBudgetReport() { $generator = $this->mock(BYRG::class); $journalRepos = $this->mock(JournalRepositoryInterface::class); $journalRepos->shouldReceive('first')->once()->andReturn(new TransactionJournal); $generator->shouldReceive('setStartDate')->once(); $generator->shouldReceive('setEndDate')->once(); $generator->shouldReceive('setAccounts')->once(); $generator->shouldReceive('setBudgets')->once(); $generator->shouldReceive('generate')->andReturn('here-be-report'); $this->be($this->user()); $response = $this->get(route('reports.report.budget', [1, 1, '20160101', '20160131'])); $response->assertStatus(200); } /** * @covers \FireflyIII\Http\Controllers\ReportController::categoryReport */ public function testCategoryReport() { $generator = $this->mock(CYRG::class); $journalRepos = $this->mock(JournalRepositoryInterface::class); $journalRepos->shouldReceive('first')->once()->andReturn(new TransactionJournal); $generator->shouldReceive('setStartDate')->once(); $generator->shouldReceive('setEndDate')->once(); $generator->shouldReceive('setAccounts')->once(); $generator->shouldReceive('setCategories')->once(); $generator->shouldReceive('generate')->andReturn('here-be-report'); $this->be($this->user()); $response = $this->get(route('reports.report.category', [1, 1, '20160101', '20160131'])); $response->assertStatus(200); } /** * @covers \FireflyIII\Http\Controllers\ReportController::defaultReport */ public function testDefaultReport() { $generator = $this->mock(SYRG::class); $journalRepos = $this->mock(JournalRepositoryInterface::class); $journalRepos->shouldReceive('first')->once()->andReturn(new TransactionJournal); $generator->shouldReceive('setStartDate')->once(); $generator->shouldReceive('setEndDate')->once(); $generator->shouldReceive('setAccounts')->once(); $generator->shouldReceive('generate')->andReturn('here-be-report'); $this->be($this->user()); $response = $this->get(route('reports.report.default', [1, '20160101', '20160131'])); $response->assertStatus(200); } /** * @covers \FireflyIII\Http\Controllers\ReportController::index * @covers \FireflyIII\Http\Controllers\ReportController::__construct */ public function testIndex() { $helper = $this->mock(ReportHelperInterface::class); $accountRepos = $this->mock(AccountRepositoryInterface::class); $journalRepos = $this->mock(JournalRepositoryInterface::class); $journalRepos->shouldReceive('first')->once()->andReturn(new TransactionJournal); $helper->shouldReceive('listOfMonths')->andReturn([]); $accountRepos->shouldReceive('getAccountsByType')->withArgs([[AccountType::DEFAULT, AccountType::ASSET]])->andReturn(new Collection)->once(); $this->be($this->user()); $response = $this->get(route('reports.index')); $response->assertStatus(200); $response->assertSee('