Skip to content

Commit

Permalink
Php unit 10 compatibility (3liz#4683)
Browse files Browse the repository at this point in the history
* use onlyMethods instead of setMethods for phpunit >=10

* fix dataprovider adding static keyword
  • Loading branch information
nworr authored Aug 8, 2024
1 parent 8e294b5 commit 4b5fb81
Show file tree
Hide file tree
Showing 13 changed files with 70 additions and 70 deletions.
28 changes: 14 additions & 14 deletions tests/units/classes/Form/QgisFormTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ protected function readFormCache($file)



public function getConstructData()
public static function getConstructData()
{
$fields = (object) array(
'pkuid' => (object) array(
Expand Down Expand Up @@ -154,7 +154,7 @@ public function testConstruct($projectKey, $layer, $fields)
}
}

public function getDefaultValuesData()
public static function getDefaultValuesData()
{
return array(
array('1231', null, '1231'),
Expand All @@ -174,7 +174,7 @@ public function getDefaultValuesData()
*/
public function testGetDefaultValues($defaultValue, $expressionResult, $expectedResult)
{
$formMock = $this->getMockBuilder(QgisFormForTests::class)->setMethods(array('evaluateExpression'))->getMock();
$formMock = $this->getMockBuilder(QgisFormForTests::class)->onlyMethods(array('evaluateExpression'))->getMock();
$formMock->method('evaluateExpression')->willReturn($expressionResult);
$layer = new QgisLayerForTests();
$layer->setDefaultValues(array('testField' => $defaultValue));
Expand All @@ -200,7 +200,7 @@ public function testGetAttributeEditorForm()
$this->assertNull($attributeForm);
}

public function getCheckData()
public static function getCheckData()
{
$dbFieldsInfo = (object) array(
'dataFields' => (object) array(
Expand Down Expand Up @@ -259,7 +259,7 @@ public function getCheckData()
public function testCheck($dbFieldsInfo, $check, $data, $evaluateExpression, $constraints, $allowWithoutGeom, $expectedResult)
{
$mockFuncs = array('getAttributesEditorForm', 'getFieldValue', 'getConstraints', 'evaluateExpression');
$formMock = $this->getMockBuilder(QgisFormForTests::class)->setMethods($mockFuncs)->getMock();
$formMock = $this->getMockBuilder(QgisFormForTests::class)->onlyMethods($mockFuncs)->getMock();
foreach ($mockFuncs as $method) {
if ($method === 'evaluateExpression') {
$formMock->method($method)->willReturn($evaluateExpression);
Expand Down Expand Up @@ -314,10 +314,10 @@ public function testSaveToDbInsert()
'field' => true,
'geometry' => true,
);
$formMock = $this->getMockBuilder(QgisFormForTests::class)->setMethods(array('getFieldList', 'getParsedValue', 'ProcessUploadedFile', 'filterDataByLogin'))->getMock();
$formMock = $this->getMockBuilder(QgisFormForTests::class)->onlyMethods(array('getFieldList', 'getParsedValue', 'ProcessUploadedFile', 'filterDataByLogin'))->getMock();
$jForm = new dummyForm();
$jForm->controls = $controls;
$layerMock = $this->getMockBuilder(QgisLayerForTests::class)->setMethods(array('getDatasourceParameters', 'updateFeature', 'insertFeature'))->getMock();
$layerMock = $this->getMockBuilder(QgisLayerForTests::class)->onlyMethods(array('getDatasourceParameters', 'updateFeature', 'insertFeature'))->getMock();
$layerMock->connection = new jDbConnectionForTests();
$layerMock->method('getDatasourceParameters')->willReturn((object) array('tablename' => null, 'schema' => null));
$layerMock->expects($this->once())->method('insertFeature')->with($this->equalTo($values));
Expand Down Expand Up @@ -350,10 +350,10 @@ public function testSaveToDbUpdate()
'field' => true,
'geometry' => true,
);
$formMock = $this->getMockBuilder(QgisFormForTests::class)->setMethods(array('getFieldList', 'getParsedValue', 'processUploadedFile', 'filterDataByLogin'))->getMock();
$formMock = $this->getMockBuilder(QgisFormForTests::class)->onlyMethods(array('getFieldList', 'getParsedValue', 'processUploadedFile', 'filterDataByLogin'))->getMock();
$jForm = new dummyForm();
$jForm->controls = $controls;
$layerMock = $this->getMockBuilder(QgisLayerForTests::class)->setMethods(array('getDatasourceParameters', 'getDatasourceConnection', 'updateFeature', 'insertFeature'))->getMock();
$layerMock = $this->getMockBuilder(QgisLayerForTests::class)->onlyMethods(array('getDatasourceParameters', 'getDatasourceConnection', 'updateFeature', 'insertFeature'))->getMock();
$layerMock->name = 'name';
$layerMock->method('getDatasourceParameters')->willReturn((object) array('tablename' => null, 'schema' => null));
$layerMock->expects($this->once())->method('updateFeature')->with($this->equalTo('feature'), $this->equalTo($values), $this->anything());
Expand All @@ -370,7 +370,7 @@ public function testSaveToDbUpdate()
$formMock->saveToDb('feature');
}

public function getFieldListData()
public static function getFieldListData()
{
$eCaps = array(
'modifyGeometry' => 'true',
Expand Down Expand Up @@ -443,8 +443,8 @@ public function testGetFieldsList($eCaps, $formFields, $insert, $expectedFields)
);
$dbFieldsInfo = (object) array('dataFields' => $dataFields);
$geometryColumn = 'geometry';
$formMock = $this->getMockBuilder(QgisFormForTests::class)->setMethods(array('getAttributesEditorForm'))->getMock();
$attributesMock = $this->getMockBuilder(qgisAttributeEditorElement::class)->disableOriginalConstructor()->setMethods(array('getFields'))->getMock();
$formMock = $this->getMockBuilder(QgisFormForTests::class)->onlyMethods(array('getAttributesEditorForm'))->getMock();
$attributesMock = $this->getMockBuilder(qgisAttributeEditorElement::class)->disableOriginalConstructor()->onlyMethods(array('getFields'))->getMock();
$attributesMock->method('getFields')->willReturn($formFields);
$layer = new QgisLayerForTests();
$layer->eCapabilities = (object) array('capabilities' => (object) $eCaps);
Expand All @@ -458,7 +458,7 @@ public function testGetFieldsList($eCaps, $formFields, $insert, $expectedFields)
$this->assertEquals($expectedFields, $formMock->getFieldListForTests($geometryColumn, $insert));
}

public function getFillControlUniqueData()
public static function getFillControlUniqueData()
{
$uniqueValues = array(
'editable' => null,
Expand Down Expand Up @@ -502,7 +502,7 @@ public function testFillControlFromUniqueValue($uniqueValues, $required, $setAtt
$dbFieldValues = array('foo', 'bar');
$form = new QgisFormForTests();
$control = $this->getMockBuilder(QgisFormControl::class)->disableOriginalConstructor()->getMock();
$control->ctrl = $this->getMockBuilder(jFormsControlListbox::class)->setMethods(array('setAttribute'))->disableOriginalConstructor()->getMock();
$control->ctrl = $this->getMockBuilder(jFormsControlListbox::class)->onlyMethods(array('setAttribute'))->disableOriginalConstructor()->getMock();
if ($setAttribute) {
$control->ctrl->expects($this->once())->method('setAttribute');
}
Expand Down
8 changes: 4 additions & 4 deletions tests/units/classes/Log/ConfigTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ public function setUp() : void
$this->context = new ContextForTests();
}

public function getTestModifyData()
public static function getTestModifyData()
{
$data1 = array(
'general' => array(
Expand Down Expand Up @@ -64,7 +64,7 @@ public function testModify($data, $newData, $expectedReturnValue)
unset($testLizmapLogConfig);
}

public function getTestSaveData()
public static function getTestSaveData()
{
$data = array(
'general' => array(
Expand Down Expand Up @@ -118,7 +118,7 @@ public function testSave($data, $expectedData, $changedProp, $changedValue, $exp
unlink($iniFile);
}

public function getTestGetLogItemListData()
public static function getTestGetLogItemListData()
{
$data1 = array(
'general' => array(),
Expand Down Expand Up @@ -163,7 +163,7 @@ public function testGetLogItemList($data, $expectedList)
$this->assertEquals($expectedList, $list);
}

public function getTestGetLogItemData()
public static function getTestGetLogItemData()
{
$data = array(
'general' => array(),
Expand Down
4 changes: 2 additions & 2 deletions tests/units/classes/Log/ItemTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ public function setUp() : void
}
}

public function getConstructData()
public static function getConstructData()
{
$data1 = array(
'label' => 'test',
Expand Down Expand Up @@ -51,7 +51,7 @@ public function testConstruct($config)
}
}

public function getLogDetailData()
public static function getLogDetailData()
{
$data1 = array(
'key' => 'key',
Expand Down
10 changes: 5 additions & 5 deletions tests/units/classes/Project/ProjectConfigTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
*/
class projectConfigTest extends TestCase
{
public function getConstructData()
public static function getConstructData()
{
$file = __DIR__.'/Ressources/events.qgs.cfg';
$json = json_decode(file_get_contents($file));
Expand Down Expand Up @@ -55,7 +55,7 @@ public function testConstructCache()
}
}

public function getFindLayerData()
public static function getFindLayerData()
{
$file = __DIR__.'/Ressources/events.qgs.cfg';
$layers = json_decode(file_get_contents($file));
Expand Down Expand Up @@ -90,7 +90,7 @@ public function testFindLayer($layers, $key, $layerName)
}
}

public function getEditionLayerByNameData()
public static function getEditionLayerByNameData()
{
$file = __DIR__.'/Ressources/montpellier.qgs.cfg';
$eLayer = json_decode(file_get_contents($file));
Expand Down Expand Up @@ -119,7 +119,7 @@ public function testGetEditionLayerByName($eLayers, $name)
}
}

public function getEditionLayerByLayerIdData()
public static function getEditionLayerByLayerIdData()
{
$file = __DIR__.'/Ressources/montpellier.qgs.cfg';
$eLayer = json_decode(file_get_contents($file));
Expand Down Expand Up @@ -151,7 +151,7 @@ public function testGetEditionLayerByLayerId($eLayers, $id, $eLayerName)
}
}

public function getOptionsValues()
public static function getOptionsValues()
{
return array(
array('mapScales', [
Expand Down
16 changes: 8 additions & 8 deletions tests/units/classes/Project/ProjectTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ public function testReadProject()

}

public function getQgisPathData()
public static function getQgisPathData()
{
return array(
array(__DIR__.'/../../../qgis-projects/demoqgis', 'montpellier', realpath(__DIR__.'/../../../qgis-projects/demoqgis/montpellier.qgs')),
Expand All @@ -61,7 +61,7 @@ public function testGetQgisPath($repPath, $key, $expectedPath)
$this->assertEquals($expectedPath, $proj->getQgisPath());
}

public function getRelativeQgisPathData()
public static function getRelativeQgisPathData()
{
return array(
array('', null, '/srv/lzm/absolute/path', '/srv/lzm/absolute/path'),
Expand Down Expand Up @@ -93,7 +93,7 @@ public function testGetRelativeQgisPath($relative, $root, $file, $expectedPath)
$this->assertEquals($expectedPath, $path);
}

public function getAttributeLayersData()
public static function getAttributeLayersData()
{
$aLayer1 = (object) array(
'layer1' => (object) array('hideLayer' => 'true'),
Expand Down Expand Up @@ -138,7 +138,7 @@ public function testHasAttributeLayer($only, $attributeLayers, $expectedReturn)
$this->assertEquals($expectedReturn, $proj->hasAttributeLayers($only));
}

public function getEditionLayersData()
public static function getEditionLayersData()
{
$eLayers = (object) array(
'layer1' => (object) array(
Expand Down Expand Up @@ -223,7 +223,7 @@ public function testHasEditionLayers($editionLayers, $acl, $unset, $expectedRet)
}
}

public function getLoginFilteredData()
public static function getLoginFilteredData()
{
$layers = (object) array(
'layer1' => (object) array(
Expand Down Expand Up @@ -260,7 +260,7 @@ public function testGetLoginFilteredConfig($lfLayers, $layers, $ln, $expectedLn)
$this->assertEquals($expectedLn, $proj->getLoginFilteredConfig($ln));
}

public function getFiltersData()
public static function getFiltersData()
{
$aclData1 = array(
'userIsConnected' => true,
Expand Down Expand Up @@ -303,7 +303,7 @@ public function testGetLoginFilters($aclData, $expectedFilters)
$this->assertEquals($expectedFilters, $filters);
}

public function getGoogleData()
public static function getGoogleData()
{
$options1 = (object) array(
'googleStreets' => 'False',
Expand Down Expand Up @@ -355,7 +355,7 @@ public function testGoogle($options, $needGoogle, $gKey)
$this->assertEquals($gKey, $proj->getGoogleKey());
}

public function getCheckAclData()
public static function getCheckAclData()
{
$result1 = array('lizmap.repositories.view' => false);
$result2 = array(
Expand Down
6 changes: 3 additions & 3 deletions tests/units/classes/Project/QgisProjectTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -400,7 +400,7 @@ public function testSetLayerOpacity()
$this->assertEquals($expectedLayer, $cfg->getLayers());
}

public function getLayerData()
public static function getLayerData()
{
$layers = array(
'montpellier' => array(
Expand Down Expand Up @@ -442,7 +442,7 @@ public function testGetLayerDefinition($layers, $id, $key)
}
}

public function getReadEditionLayersData()
public static function getReadEditionLayersData()
{
$intraELayer = '{
"anno_point": {
Expand Down Expand Up @@ -696,7 +696,7 @@ public function testReadAttributeLayer()
$this->assertEquals($xml, $aLayer->montpellier_events->attributetableconfig);
}

public function getShortNamesData()
public static function getShortNamesData()
{
$dir = __DIR__.'/Ressources/Projs/';

Expand Down
4 changes: 2 additions & 2 deletions tests/units/classes/Request/OGCRequestTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ public function testProcess()
'request' => 'getcapabilities'
);
$ogc = $this->getMockBuilder(OGCRequestForTests::class)
->setMethods(['process_getcapabilities'])
->onlyMethods(['process_getcapabilities'])
->setConstructorArgs([new ProjectForOGCForTests(), $params, null])
->getMock();
$ogc->expects($this->once())->method('process_getcapabilities');
Expand All @@ -83,7 +83,7 @@ public function testProcess()
'request' => 'not existing method'
);
$ogc = $this->getMockBuilder(OGCRequestForTests::class)
->setMethods(['serviceException'])
->onlyMethods(['serviceException'])
->setConstructorArgs([new ProjectForOGCForTests(), $params, null])
->getMock();
$ogc->expects($this->once())->method('serviceException')->with(501);
Expand Down
12 changes: 6 additions & 6 deletions tests/units/classes/Request/ProxyTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ public function setUp() : void
Request\Proxy::setAppContext($appContext);
}

public function getBuildData()
public static function getBuildData()
{
$requestXmlWMS = ' <getcapabilities service="wms"></getcapabilities>';
$requestXmlWFS = ' <getcapabilities service="wfs"></getcapabilities>';
Expand Down Expand Up @@ -50,7 +50,7 @@ public function testBuild($params, $requestXml, $expectedClass)
}
}

public function getNormalizeParamsData()
public static function getNormalizeParamsData()
{
$paramsNormal = array(
'service' => 'WMS',
Expand Down Expand Up @@ -92,7 +92,7 @@ public function testNormalizeParams($params, $expectedData)
$this->assertEquals($expectedData, $data);
}

public function getConstructUrlData()
public static function getConstructUrlData()
{
$paramsNormal = array(
'service' => 'WMS',
Expand Down Expand Up @@ -125,7 +125,7 @@ public function testConstructUrl($params, $expectedUrl, $url)
$this->assertEquals($expectedUrl, $result);
}

public function getBuildOptionsData()
public static function getBuildOptionsData()
{
$optionsStr = 'proxyHttp';
$options = array(
Expand Down Expand Up @@ -177,7 +177,7 @@ public function testBuildOptions($options, $method, $debug, $expectedResult)
$this->assertEquals($expectedResult, $result);
}

public function getBuildHeadersData()
public static function getBuildHeadersData()
{
$options1 = array(
'method' => 'get',
Expand Down Expand Up @@ -242,7 +242,7 @@ public function testBuildHeaders($options, $expectedHeaders, $expectedBody, $exp
}
}

public function getUserHttpHeadersData()
public static function getUserHttpHeadersData()
{
return array(
array(false, null, null, '', ''),
Expand Down
Loading

1 comment on commit 4b5fb81

@github-actions
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The latest run of PHPStan has failed, maybe it's due to a newer version released recently 😣
Current version used on CI :

PHPStan - PHP Static Analysis Tool 1.11.10

https://github.com/phpstan/phpstan/releases

Have a look to your current version of PHPStan like :

docker exec CONTAINER_test_php tests/units/vendor/phpstan/phpstan/phpstan -V

And update if needed :

./lizmap-ctl composer-update

Please sign in to comment.