makeTestData(); if (config('ninja.testvars.travis') !== false) { $this->markTestSkipped('Skip test for Travis'); } } public function testDownloadInvoiceRoute() { $response = $this->withHeaders([ 'X-API-SECRET' => config('ninja.api_secret'), 'X-API-TOKEN' => $this->token, ])->get("/api/v1/invoices/{$this->invoice->hashed_id}/download"); $response->assertStatus(200); $response->assertDownload(); } public function testDownloadDeliveryRoute() { $response = $this->withHeaders([ 'X-API-SECRET' => config('ninja.api_secret'), 'X-API-TOKEN' => $this->token, ])->get("/api/v1/invoices/{$this->invoice->hashed_id}/delivery_note"); $response->assertStatus(200); $response->assertDownload(); } public function testDownloadInvoiceBulkActionRoute() { $data = [ 'action' => 'download', 'ids' => [$this->invoice->hashed_id], ]; $response = $this->withHeaders([ 'X-API-SECRET' => config('ninja.api_secret'), 'X-API-TOKEN' => $this->token, ])->post("/api/v1/invoices/bulk", $data); $response->assertStatus(200); $response->assertDownload(); } 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); } }