Passed
Push — master ( ed6627...cde292 )
by Owen
12:57
created

BadHyperlinkTest   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 22
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 2
eloc 15
c 1
b 0
f 0
dl 0
loc 22
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A testControlCharacter() 0 9 1
A testBadHyperlink() 0 9 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\Reader\Xml as XmlReader;
9
use PhpOffice\PhpSpreadsheet\Writer\Html as HtmlWriter;
10
use PHPUnit\Framework\TestCase;
11
12
class BadHyperlinkTest extends TestCase
13
{
14
    public function testBadHyperlink(): void
15
    {
16
        $reader = new XlsxReader();
17
        $infile = 'tests/data/Reader/XLSX/sec-j47r.dontuse';
18
        $spreadsheet = $reader->load($infile);
19
        $writer = new HtmlWriter($spreadsheet);
20
        $html = $writer->generateHtmlAll();
21
        self::assertStringContainsString('<td class="column0 style1 f">jav&#9;ascript:alert()</td>', $html);
22
        $spreadsheet->disconnectWorksheets();
23
    }
24
25
    public function testControlCharacter(): void
26
    {
27
        $reader = new XmlReader();
28
        $infile = 'tests/data/Reader/Xml/sec-w24f.dontuse';
29
        $spreadsheet = $reader->load($infile);
30
        $writer = new HtmlWriter($spreadsheet);
31
        $html = $writer->generateHtmlAll();
32
        self::assertStringContainsString('<td class="column0 style0 f">&#20;j&#13;avascript:alert(1)</td>', $html);
33
        $spreadsheet->disconnectWorksheets();
34
    }
35
}
36