makeTestData(); if (config('ninja.testvars.travis') !== false) { $this->markTestSkipped('Skip test for Travis'); } } private function mockActivity() { $activity_repo = new ActivityRepository(); $obj = new \stdClass; $obj->invoice_id = $this->invoice->id; $obj->user_id = $this->invoice->user_id; $obj->company_id = $this->company->id; $activity_repo->save($obj, $this->invoice, Ninja::eventVars()); } public function testActivityAccessible() { $this->mockActivity(); $this->assertNotNull($this->invoice->activities); } public function testBackupExists() { $this->mockActivity(); $this->assertNotNull($this->invoice->activities->first()->backup->html_backup); } public function testBackupDownload() { $this->mockActivity(); $response = $this->withHeaders([ 'X-API-SECRET' => config('ninja.api_secret'), 'X-API-TOKEN' => $this->token, ])->get('/api/v1/activities/download_entity/'.$this->encodePrimaryKey($this->invoice->activities->first()->id)); $response->assertStatus(200); } public function testBackupCheckPriorToDownloadWorks() { $this->mockActivity(); $backup = $this->invoice->activities->first()->backup; $backup->forceDelete(); $response = $this->withHeaders([ 'X-API-SECRET' => config('ninja.api_secret'), 'X-API-TOKEN' => $this->token, ])->get('/api/v1/activities/download_entity/'.$this->encodePrimaryKey($this->invoice->activities->first()->id)); $response->assertStatus(404); } }