createMock(TranslatorInterface::class)); $annotationExtractor = new AnnotationExtractor(new AnnotationReader()); $project = new Project(); $project->setName('test project'); $project->setCustomer((new Customer())->setName('A customer')); $project->setComment('Lorem Ipsum'); $project->setOrderNumber('1234567890'); $project->setBudget(123456.7890); $project->setTimeBudget(1234567890); $project->setColor('#ababab'); $project->setVisible(false); $sut = new AnnotatedObjectExporter($spreadsheetExporter, $annotationExtractor); $spreadsheet = $sut->export(Project::class, [$project]); $worksheet = $spreadsheet->getActiveSheet(); self::assertNull($worksheet->getCellByColumnAndRow(1, 2, false)->getValue()); self::assertEquals('test project', $worksheet->getCellByColumnAndRow(2, 2, false)->getValue()); self::assertEquals('A customer', $worksheet->getCellByColumnAndRow(3, 2, false)->getValue()); self::assertEquals(1234567890, $worksheet->getCellByColumnAndRow(4, 2, false)->getValue()); self::assertEquals('', $worksheet->getCellByColumnAndRow(5, 2, false)->getValue()); self::assertEquals('', $worksheet->getCellByColumnAndRow(6, 2, false)->getValue()); self::assertEquals('', $worksheet->getCellByColumnAndRow(7, 2, false)->getValue()); self::assertEquals('#ababab', $worksheet->getCellByColumnAndRow(8, 2, false)->getValue()); self::assertFalse($worksheet->getCellByColumnAndRow(9, 2, false)->getValue()); self::assertEquals('Lorem Ipsum', $worksheet->getCellByColumnAndRow(10, 2, false)->getValue()); } }