build(); $this->assertInstanceOf(Invoice::class, $entity); $this->assertNotNull($entity->client); $pdf_service = new PdfService($entity->invitation); $this->assertNotNull($pdf_service); $pdf_config = (new PdfConfiguration($pdf_service)); $this->assertNotNull($pdf_config); } public function testHtmlGeneration() { $mock = (new PdfMock())->build(); $pdf_service = new PdfService($mock->invitation); $pdf_config = (new PdfConfiguration($pdf_service)); $pdf_config->entity = $mock; $pdf_config->setTaxMap($mock->tax_map); $pdf_config->setTotalTaxMap($mock->total_tax_map); $pdf_config->setCurrency(Currency::find(1)); $pdf_config->setCountry(Country::find(840)); $pdf_config->client = $mock->client; $pdf_config->entity_design_id = 'invoice_design_id'; $pdf_config->settings_object = $mock->client; $pdf_config->entity_string = 'invoice'; $pdf_config->settings = (object)$pdf_config->service->company->settings; $pdf_config->setPdfVariables(); $pdf_config->design = Design::find(2); $pdf_config->currency_entity = $mock->client; $pdf_service->config = $pdf_config; $pdf_designer = (new \App\Services\Pdf\PdfDesigner($pdf_service))->build(); $pdf_service->designer = $pdf_designer; $pdf_service->html_variables = $this->getStubVariables(); $pdf_builder = (new PdfBuilder($pdf_service))->build(); $pdf_service->builder = $pdf_builder; $this->assertNotNull($pdf_config); } private function getStubVariables() { return ['values' => [], 'labels' => []]; } }