Failed Conditions
Pull Request — master (#4412)
by
unknown
14:08
created

HtmlTestDifferentConditionalFormattings   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 28
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
eloc 18
dl 0
loc 28
rs 10
c 1
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A tearDown() 0 5 2
A testColourScaleHtmlOutput() 0 16 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace PhpOffice\PhpSpreadsheetTests\Writer\Html;
6
7
use PhpOffice\PhpSpreadsheet\Reader\Xlsx as XlsxReader;
8
use PhpOffice\PhpSpreadsheet\Shared\File;
9
use PhpOffice\PhpSpreadsheet\Writer\Html as HtmlWriter;
10
use PHPUnit\Framework\TestCase;
11
12
class HtmlTestDifferentConditionalFormattings extends TestCase
13
{
14
    private string $outfile = '';
15
16
    protected function tearDown(): void
17
    {
18
        if ($this->outfile !== '') {
19
            unlink($this->outfile);
20
            $this->outfile = '';
21
        }
22
    }
23
24
    public function testColourScaleHtmlOutput(): void
25
    {
26
        $this->outfile = File::temporaryFilename();
27
        $file = 'tests/data/Writer/Html/HtmlTestDifferentConditionalFormattings.xlsx';
28
        $reader = new XlsxReader();
29
        $spreadsheet = $reader->load($file);
30
        $writer = new HtmlWriter($spreadsheet);
31
        $writer->setConditionalFormatting(true);
32
33
        $file = 'zip://';
34
        $file .= $this->outfile;
35
        $file .= '#xl/styles.xml';
36
        $data = str_replace(["\r", "\n"], '', $writer->generateHtmlAll());
37
        $expected = '    <table border=\'0\' cellpadding=\'0\' cellspacing=\'0\' id=\'sheet0\' class=\'sheet0 gridlines\'>        <col class="col0" />        <col class="col1" />        <col class="col2" />        <col class="col3" />        <col class="col4" />        <col class="col5" />        <col class="col6" />        <tbody>          <tr class="row0">            <td class="column0 style1 n" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">1</td>            <td class="column1 style1 n">2</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style1 n">1</td>            <td class="column5 style1 n">2</td>            <td class="column6 style1 n" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">3</td>          </tr>          <tr class="row1">            <td class="column0 style1 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">terve</td>            <td class="column1 style1 s">moi</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style0">&nbsp;</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row2">            <td class="column0 style1 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">terve</td>            <td class="column1 style1 s">moi</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style0">&nbsp;</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row3">            <td class="column0 style1 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">terve</td>            <td class="column1 style1 s">moi</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style0">&nbsp;</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row4">            <td class="column0 style1 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">terve</td>            <td class="column1 style1 s">moi</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style0">&nbsp;</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row5">            <td class="column0 style2 n" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">2025/01/01</td>            <td class="column1 style2 n">2020/01/01</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style0">&nbsp;</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row6">            <td class="column0 style1 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">terve vaan</td>            <td class="column1 style1 s">moi</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style1 n">1</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row7">            <td class="column0 style1 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">terve</td>            <td class="column1 style1 s">terve vaan</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style1 n">2</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row8">            <td class="column0 style3 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">#DIV/0!</td>            <td class="column1 style1 s">moi</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style1 n">3</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row9">            <td class="column0 style1 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">moi</td>            <td class="column1 style3 s">#DIV/0!</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style1 n" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">4</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row10">            <td class="column0 style1 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">terve</td>            <td class="column1 style1 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">terve</td>            <td class="column2 style1 s">moi</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style0">&nbsp;</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row11">            <td class="column0 style1 s" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">moi</td>            <td class="column1 style1 s">terve</td>            <td class="column2 style1 s">terve</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style0">&nbsp;</td>            <td class="column6 style0">&nbsp;</td>          </tr>          <tr class="row12">            <td class="column0 style1 n" style="vertical-align:bottom;border-bottom:1px solid #000000 !important;border-top:1px solid #000000 !important;border-left:1px solid #000000 !important;border-right:1px solid #000000 !important;color:#000000;font-family:\'Arial\';font-size:11pt;background-color:#B7E1CD;">12</td>            <td class="column1 style1 n">10</td>            <td class="column2 style0">&nbsp;</td>            <td class="column3 style0">&nbsp;</td>            <td class="column4 style0">&nbsp;</td>            <td class="column5 style0">&nbsp;</td>            <td class="column6 style0">&nbsp;</td>          </tr>    </tbody></table>';
38
        self::assertStringContainsString($expected, $data, 'colour scale');
39
        $spreadsheet->disconnectWorksheets();
40
    }
41
}
42