PhpSpreadsheet/tests/PhpSpreadsheetTests/Helper/SampleTest.php

70 lines
1.9 KiB
PHP
Raw Normal View History

<?php
namespace PhpOffice\PhpSpreadsheetTests\Helper;
use PhpOffice\PhpSpreadsheet\Helper\Sample;
use PHPUnit\Framework\TestCase;
class SampleTest extends TestCase
{
/**
* @runInSeparateProcess
* @preserveGlobalState disabled
* @dataProvider providerSample
2016-12-22 14:43:37 +00:00
*
* @param mixed $sample
*/
2020-05-18 04:49:57 +00:00
public function testSample($sample): void
{
// Suppress output to console
2020-05-18 04:49:57 +00:00
$this->setOutputCallback(function (): void {
});
require $sample;
2019-07-25 06:45:43 +00:00
self::assertTrue(true);
}
public function providerSample()
{
$skipped = [
'Chart/32_Chart_read_write_PDF.php', // Unfortunately JpGraph is not up to date for latest PHP and raise many warnings
'Chart/32_Chart_read_write_HTML.php', // idem
];
// TCPDF and DomPDF libraries don't support PHP8 yet
if (\PHP_VERSION_ID >= 80000) {
$skipped = array_merge(
$skipped,
[
'Pdf/21_Pdf_Domdf.php',
'Pdf/21_Pdf_TCPDF.php',
]
);
}
// Unfortunately some tests are too long be ran with code-coverage
// analysis on Travis, so we need to exclude them
global $argv;
if (in_array('--coverage-clover', $argv)) {
$tooLongToBeCovered = [
'Basic/06_Largescale.php',
'Basic/13_CalculationCyclicFormulae.php',
];
$skipped = array_merge($skipped, $tooLongToBeCovered);
}
$helper = new Sample();
2017-10-01 08:48:59 +00:00
$result = [];
foreach ($helper->getSamples() as $samples) {
foreach ($samples as $sample) {
if (!in_array($sample, $skipped)) {
$file = 'samples/' . $sample;
2017-10-01 08:48:59 +00:00
$result[] = [$file];
}
}
}
2017-10-01 08:48:59 +00:00
return $result;
}
}