File tree Expand file tree Collapse file tree
tests/PhpSpreadsheetTests Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -510,6 +510,7 @@ public function disconnectWorksheets(): void
510510 unset($ worksheet );
511511 }
512512 $ this ->workSheetCollection = [];
513+ $ this ->activeSheetIndex = -1 ;
513514 }
514515
515516 /**
Original file line number Diff line number Diff line change 1+ <?php
2+
3+ declare (strict_types=1 );
4+
5+ namespace PhpOffice \PhpSpreadsheetTests ;
6+
7+ use PhpOffice \PhpSpreadsheet \Spreadsheet ;
8+ use PHPUnit \Framework \TestCase ;
9+
10+ class ReuseDisconnectTest extends TestCase
11+ {
12+ public function testDisconnectThenReuse (): void
13+ {
14+ $ spreadsheet = new Spreadsheet ();
15+ $ spreadsheet ->disconnectWorksheets ();
16+ self ::assertSame (0 , $ spreadsheet ->getSheetCount ());
17+ self ::assertSame (-1 , $ spreadsheet ->getActiveSheetIndex ());
18+
19+ $ sheet = $ spreadsheet ->createSheet (0 );
20+ self ::assertSame (1 , $ spreadsheet ->getSheetCount ());
21+ self ::assertSame (0 , $ spreadsheet ->getActiveSheetIndex ());
22+
23+ // Confirm calculation engine and style supervisor are instact
24+ $ sheet ->getCell ('A1 ' )->setValue ('=1+2 ' );
25+ $ sheet ->getStyle ('A1 ' )->getFont ()->setBold (true );
26+ self ::assertSame (3 , $ sheet ->getCell ('A1 ' )->getCalculatedValue ());
27+ self ::assertTrue (
28+ $ sheet ->getStyle ('A1 ' )->getFont ()->getBold ()
29+ );
30+
31+ $ spreadsheet ->disconnectWorksheets ();
32+ }
33+ }
You can’t perform that action at this time.
0 commit comments