Completed
Push — master ( 4f6d4a...97a80f )
by Adrien
11:15 queued 03:45
created

InvalidFileNameTest   A

Complexity

Total Complexity 4

Size/Duplication

Total Lines 39
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 24
c 1
b 0
f 0
dl 0
loc 39
rs 10
wmc 4

4 Methods

Rating   Name   Duplication   Size   Complexity  
A testWinFileNames() 0 5 1
A testEmptyTempdirNamePdf() 0 12 1
A testEmptyFileNamePdf() 0 7 1
A testEmptyFileName() 0 7 1
1
<?php
2
3
namespace PhpOffice\PhpSpreadsheetTests\Writer\Html;
4
5
use PhpOffice\PhpSpreadsheet\Shared\File;
6
use PhpOffice\PhpSpreadsheet\Spreadsheet;
7
use PhpOffice\PhpSpreadsheet\Worksheet\PageSetup;
8
use PhpOffice\PhpSpreadsheet\Writer\Exception as WriterException;
9
use PhpOffice\PhpSpreadsheet\Writer\Html;
10
use PhpOffice\PhpSpreadsheet\Writer\Pdf\Mpdf;
11
use PhpOffice\PhpSpreadsheetTests\Functional;
12
13
class InvalidFileNameTest extends Functional\AbstractFunctional
14
{
15
    public function testEmptyFileName()
16
    {
17
        $this->expectException(WriterException::class);
18
        $spreadsheet = new Spreadsheet();
19
        $spreadsheet->getActiveSheet()->getCell('A1')->setValue('Cell 1');
20
        $writer = new Html($spreadsheet);
21
        $writer->save('');
22
    }
23
24
    public function testEmptyFileNamePdf()
25
    {
26
        $this->expectException(WriterException::class);
27
        $spreadsheet = new Spreadsheet();
28
        $spreadsheet->getActiveSheet()->getCell('A1')->setValue('Cell 1');
29
        $writer = new Mpdf($spreadsheet);
30
        $writer->save('');
31
    }
32
33
    public function testEmptyTempdirNamePdf()
34
    {
35
        $this->expectException(WriterException::class);
36
        $spreadsheet = new Spreadsheet();
37
        $spreadsheet->getActiveSheet()->getCell('A1')->setValue('Cell 1');
38
        $writer = new Mpdf($spreadsheet);
39
        $writer->setFont('Helvetica');
40
        self::assertEquals('Helvetica', $writer->getFont());
41
        $writer->setPaperSize(PageSetup::PAPERSIZE_LEDGER);
42
        self::assertEquals($writer->getPaperSize(), PageSetup::PAPERSIZE_LEDGER);
43
        self::assertEquals(File::sysGetTempDir() . '/phpsppdf', $writer->getTempDir());
44
        $writer->setTempDir('');
45
    }
46
47
    public function testWinFileNames()
48
    {
49
        self::assertEquals('file:///C:/temp/filename.xlsx', Html::winFileToUrl('C:\\temp\filename.xlsx'));
50
        self::assertEquals('/tmp/filename.xlsx', Html::winFileToUrl('/tmp/filename.xlsx'));
51
        self::assertEquals('a:bfile', Html::winFileToUrl('a:bfile'));
52
    }
53
}
54