mirror of
https://github.com/Combodo/iTop.git
synced 2026-05-18 14:58:43 +02:00
N°9514 - End user device cannot be uninstalled (WIP)
This commit is contained in:
@@ -92,7 +92,7 @@ class DataFeatureRemovalController extends Controller
|
||||
$oDryRemovalRuntimeEnvironment->CompileFrom($sSourceEnv);
|
||||
|
||||
$oSetupAudit = new SetupAudit($sSourceEnv);
|
||||
$aGetRemovedClasses = $oSetupAudit->GetIssues();
|
||||
$aGetRemovedClasses = $oSetupAudit->RunDataAudit();
|
||||
IssueLog::Debug(__METHOD__, null, ['aGetRemovedClasses' => $aGetRemovedClasses]);
|
||||
$this->aCountClassesToCleanup = $aGetRemovedClasses;
|
||||
}
|
||||
|
||||
@@ -51,7 +51,15 @@ abstract class AbstractSetupAudit
|
||||
return $this->aRemovedClasses;
|
||||
}
|
||||
|
||||
public function GetIssues(bool $bStopDataCheckAtFirstIssue = false): array
|
||||
/**
|
||||
* Generate issues when audit detects data to remove
|
||||
*
|
||||
* @param bool $bStopDataCheckAtFirstIssue
|
||||
*
|
||||
* @return array
|
||||
* @throws \CoreException
|
||||
*/
|
||||
public function RunDataAudit(bool $bStopDataCheckAtFirstIssue = false): array
|
||||
{
|
||||
$this->aFinalClassesToCleanup = [];
|
||||
|
||||
@@ -64,7 +72,7 @@ abstract class AbstractSetupAudit
|
||||
$iCount = $this->Count($sClass);
|
||||
$this->aFinalClassesToCleanup[$sClass] = $iCount;
|
||||
if ($bStopDataCheckAtFirstIssue && $iCount > 0) {
|
||||
//setup envt: should raise issue ASAP
|
||||
//setup env: should raise issue ASAP
|
||||
$this->LogInfoWithProperLogger("Setup audit found data to cleanup", null, $this->aFinalClassesToCleanup);
|
||||
return $this->aFinalClassesToCleanup;
|
||||
}
|
||||
|
||||
@@ -1329,9 +1329,9 @@ class RunTimeEnvironment
|
||||
$oSetupAudit = new SetupAudit(ITOP_DEFAULT_ENV, $this->sBuildEnv);
|
||||
|
||||
//Make sure the MetaModel is started before analysing for issues
|
||||
$sConfFile = utils::GetConfigFilePath($this->sBuildEnv);
|
||||
MetaModel::Startup($sConfFile, false, false, false, $this->sBuildEnv);
|
||||
$oSetupAudit->GetIssues(true);
|
||||
$sConfFile = utils::GetConfigFilePath(ITOP_DEFAULT_ENV);
|
||||
MetaModel::Startup($sConfFile, false, false); // Start on production environment
|
||||
$oSetupAudit->RunDataAudit(true);
|
||||
$iCount = $oSetupAudit->GetDataToCleanupCount();
|
||||
|
||||
if ($iCount > 0) {
|
||||
|
||||
@@ -66,7 +66,7 @@ class SetupAuditTest extends ItopCustomDatamodelTestCase
|
||||
$expected = [
|
||||
"FinalClassFeature2Module1MyFinalClassFromLocation" => 0,
|
||||
];
|
||||
$this->assertEqualsCanonicalizing($expected, $oSetupAudit->GetIssues());
|
||||
$this->assertEqualsCanonicalizing($expected, $oSetupAudit->RunDataAudit());
|
||||
}
|
||||
|
||||
public function testGetRemovedClassesFromSetupWizard()
|
||||
@@ -103,7 +103,7 @@ class SetupAuditTest extends ItopCustomDatamodelTestCase
|
||||
"FinalClassFeature1Module1MyFinalClassFromLocation" => 1,
|
||||
"FinalClassFeature2Module1MyFinalClassFromLocation" => 0,
|
||||
];
|
||||
$this->assertEqualsCanonicalizing($expected, $oSetupAudit->GetIssues());
|
||||
$this->assertEqualsCanonicalizing($expected, $oSetupAudit->RunDataAudit());
|
||||
}
|
||||
|
||||
public function testAuditExtensionsCleanupRulesFailASAP()
|
||||
@@ -128,6 +128,6 @@ class SetupAuditTest extends ItopCustomDatamodelTestCase
|
||||
$expected = [
|
||||
"FinalClassFeature1Module1MyFinalClassFromLocation" => 1,
|
||||
];
|
||||
$this->assertEqualsCanonicalizing($expected, $oSetupAudit->GetIssues(true));
|
||||
$this->assertEqualsCanonicalizing($expected, $oSetupAudit->RunDataAudit(true));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user