| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- <?php
- namespace PhpOffice\PhpSpreadsheetTests\Writer\Xlsx;
- use PhpOffice\PhpSpreadsheet\Reader\Xlsx as Reader;
- use PhpOffice\PhpSpreadsheet\Shared\File;
- use PhpOffice\PhpSpreadsheet\Spreadsheet;
- use PhpOffice\PhpSpreadsheet\Writer\Xlsx as Writer;
- use PHPUnit\Framework\TestCase;
- class FloatsRetainedTest extends TestCase
- {
- /**
- * @dataProvider providerIntyFloatsRetainedByWriter
- *
- * @param float|int $value
- */
- public function testIntyFloatsRetainedByWriter($value): void
- {
- $outputFilename = File::temporaryFilename();
- $sheet = new Spreadsheet();
- $sheet->getActiveSheet()->getCell('A1')->setValue($value);
- $writer = new Writer($sheet);
- $writer->save($outputFilename);
- $reader = new Reader();
- $sheet = $reader->load($outputFilename);
- unlink($outputFilename);
- self::assertSame($value, $sheet->getActiveSheet()->getCell('A1')->getValue());
- }
- public function providerIntyFloatsRetainedByWriter(): array
- {
- return [
- [-1.0],
- [-1],
- [0.0],
- [0],
- [1.0],
- [1],
- [1e-3],
- [1.3e-10],
- [1e10],
- [3.00000000000000000001],
- [99999999999999999],
- [99999999999999999.0],
- [999999999999999999999999999999999999999999],
- [999999999999999999999999999999999999999999.0],
- ];
- }
- }
|