Passed
Pull Request — master (#4333)
by Owen
11:30
created

Issue4331Test   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 45
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 1
eloc 34
c 1
b 0
f 0
dl 0
loc 45
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A testIssue4331() 0 43 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace PhpOffice\PhpSpreadsheetTests\Writer\Xls;
6
7
use PhpOffice\PhpSpreadsheet\Spreadsheet;
8
use PhpOffice\PhpSpreadsheetTests\Functional\AbstractFunctional;
9
10
class Issue4331Test extends AbstractFunctional
11
{
12
    public function testIssue4331(): void
13
    {
14
        $spreadsheet = new Spreadsheet();
15
        $sheet = $spreadsheet->getActiveSheet();
16
        $c3 = '=VLOOKUP(B3,$B$10:$C$13,2,FALSE)';
17
        $d3 = '=VLOOKUP("intermediate",$B$10:$C$13,2,TRUE)';
18
        $c4 = '=VLOOKUP(B3,$B$10:$C$13,2,FALSE())';
19
        $d4 = '=VLOOKUP("intermediate",$B$10:$C$13,2,TRUE())';
20
        $sheet->fromArray(
21
            [
22
                ['level', 'result'],
23
                ['medium', $c3, $d3],
24
                [null, $c4, $d4],
25
            ],
26
            null,
27
            'B2',
28
            true
29
        );
30
        $sheet->fromArray(
31
            [
32
                ['high', 6],
33
                ['low', 2],
34
                ['medium', 4],
35
                ['none', 0],
36
            ],
37
            null,
38
            'B10',
39
            true
40
        );
41
42
        $reloadedSpreadsheet = $this->writeAndReload($spreadsheet, 'Xls');
43
        $spreadsheet->disconnectWorksheets();
44
45
        $worksheet = $reloadedSpreadsheet->getActiveSheet();
46
        self::assertSame($c3, $worksheet->getCell('C3')->getValue());
47
        self::assertSame(4, $worksheet->getCell('C3')->getCalculatedValue());
48
        self::assertSame($d3, $worksheet->getCell('D3')->getValue());
49
        self::assertSame(6, $worksheet->getCell('D3')->getCalculatedValue());
50
        self::assertSame($c4, $worksheet->getCell('C4')->getValue());
51
        self::assertSame(4, $worksheet->getCell('C4')->getCalculatedValue());
52
        self::assertSame($d4, $worksheet->getCell('D4')->getValue());
53
        self::assertSame(6, $worksheet->getCell('D4')->getCalculatedValue());
54
        $reloadedSpreadsheet->disconnectWorksheets();
55
    }
56
}
57