prevValue = Settings::getLibXmlLoaderOptions(); // Disable validating XML with the DTD Settings::setLibXmlLoaderOptions($this->prevValue & ~LIBXML_DTDVALID & ~LIBXML_DTDATTR & ~LIBXML_DTDLOAD); } protected function tearDown(): void { Settings::setLibXmlLoaderOptions($this->prevValue); } /** * Test check if conditional style with type 'notContainsText' works on xlsx */ public function testConditionalNotContainsText(): void { $spreadsheet = new Spreadsheet(); $worksheet = $spreadsheet->getActiveSheet(); $condition = new Conditional(); $condition->setConditionType(Conditional::CONDITION_NOTCONTAINSTEXT); $condition->setOperatorType(Conditional::OPERATOR_NOTCONTAINS); $condition->setText("C"); $condition->getStyle()->applyFromArray([ 'fill' => [ 'color' => ['argb' => 'FFFFC000'], 'fillType' => Fill::FILL_SOLID, ], ]); $worksheet->setConditionalStyles('A1:A5', [$condition]); $writer = new Xlsx($spreadsheet); $writerWorksheet = new Xlsx\Worksheet($writer); $data = $writerWorksheet->writeWorksheet($worksheet, []); $needle = <<ISERROR(SEARCH("C",A1:A5)) xml; $this->assertStringContainsString($needle, $data); } }