From d17c3aabbb13a6748a427ac0c79e0e61ab8dabe3 Mon Sep 17 00:00:00 2001 From: Eric Espie Date: Fri, 19 Dec 2025 09:56:18 +0100 Subject: [PATCH] :white_check_mark: Fix false positive in tests --- .../PropertyTree/ValueType/ValueTypeClass.php | 4 ++- .../Forms/Compiler/FormsCompilerTest.php | 36 +++++++++---------- 2 files changed, 21 insertions(+), 19 deletions(-) diff --git a/sources/PropertyTree/ValueType/ValueTypeClass.php b/sources/PropertyTree/ValueType/ValueTypeClass.php index ca0a1e00d..6933c4ac8 100644 --- a/sources/PropertyTree/ValueType/ValueTypeClass.php +++ b/sources/PropertyTree/ValueType/ValueTypeClass.php @@ -32,7 +32,9 @@ class ValueTypeClass extends AbstractValueType $oModelReflection = DIService::GetInstance()->GetService('ModelReflection'); $sChoices = "[\n"; - foreach ($oModelReflection->GetClasses($sCategories, true) as $sClass) { + $aClasses = $oModelReflection->GetClasses($sCategories, true); + sort($aClasses); + foreach ($aClasses as $sClass) { if ($oModelReflection->IsAbstract($sClass)) { continue; } diff --git a/tests/php-unit-tests/unitary-tests/sources/Forms/Compiler/FormsCompilerTest.php b/tests/php-unit-tests/unitary-tests/sources/Forms/Compiler/FormsCompilerTest.php index 8e15144ec..add725dac 100644 --- a/tests/php-unit-tests/unitary-tests/sources/Forms/Compiler/FormsCompilerTest.php +++ b/tests/php-unit-tests/unitary-tests/sources/Forms/Compiler/FormsCompilerTest.php @@ -567,37 +567,37 @@ class FormFor__ClassCategory extends Combodo\iTop\Forms\Block\Base\FormBlock \$this->Add('class_property', 'Combodo\iTop\Forms\Block\Base\ChoiceFormBlock', [ 'label' => 'UI:Class', 'choices' => [ - \Dict::S('Class:UserExternal') => 'UserExternal', - \Dict::S('Class:UserLDAP') => 'UserLDAP', - \Dict::S('Class:UserLocal') => 'UserLocal', + \Dict::S('Class:ActionEmail') => 'ActionEmail', + \Dict::S('Class:ActionNewsroom') => 'ActionNewsroom', \Dict::S('Class:AuditCategory') => 'AuditCategory', \Dict::S('Class:AuditDomain') => 'AuditDomain', \Dict::S('Class:AuditRule') => 'AuditRule', + \Dict::S('Class:OAuthClientAzure') => 'OAuthClientAzure', + \Dict::S('Class:OAuthClientGoogle') => 'OAuthClientGoogle', \Dict::S('Class:QueryOQL') => 'QueryOQL', - \Dict::S('Class:ActionEmail') => 'ActionEmail', - \Dict::S('Class:TriggerOnPortalUpdate') => 'TriggerOnPortalUpdate', - \Dict::S('Class:TriggerOnStateEnter') => 'TriggerOnStateEnter', - \Dict::S('Class:TriggerOnStateLeave') => 'TriggerOnStateLeave', - \Dict::S('Class:TriggerOnObjectCreate') => 'TriggerOnObjectCreate', - \Dict::S('Class:TriggerOnObjectDelete') => 'TriggerOnObjectDelete', - \Dict::S('Class:TriggerOnObjectUpdate') => 'TriggerOnObjectUpdate', - \Dict::S('Class:TriggerOnObjectMention') => 'TriggerOnObjectMention', - \Dict::S('Class:TriggerOnAttributeBlobDownload') => 'TriggerOnAttributeBlobDownload', - \Dict::S('Class:TriggerOnThresholdReached') => 'TriggerOnThresholdReached', - \Dict::S('Class:SynchroDataSource') => 'SynchroDataSource', - \Dict::S('Class:SynchroAttribute') => 'SynchroAttribute', \Dict::S('Class:SynchroAttExtKey') => 'SynchroAttExtKey', \Dict::S('Class:SynchroAttLinkSet') => 'SynchroAttLinkSet', + \Dict::S('Class:SynchroAttribute') => 'SynchroAttribute', + \Dict::S('Class:SynchroDataSource') => 'SynchroDataSource', \Dict::S('Class:SynchroLog') => 'SynchroLog', \Dict::S('Class:SynchroReplica') => 'SynchroReplica', - \Dict::S('Class:ActionNewsroom') => 'ActionNewsroom', \Dict::S('Class:TriggerOnAttachmentCreate') => 'TriggerOnAttachmentCreate', \Dict::S('Class:TriggerOnAttachmentDelete') => 'TriggerOnAttachmentDelete', \Dict::S('Class:TriggerOnAttachmentDownload') => 'TriggerOnAttachmentDownload', - \Dict::S('Class:OAuthClientAzure') => 'OAuthClientAzure', - \Dict::S('Class:OAuthClientGoogle') => 'OAuthClientGoogle', + \Dict::S('Class:TriggerOnAttributeBlobDownload') => 'TriggerOnAttributeBlobDownload', + \Dict::S('Class:TriggerOnObjectCreate') => 'TriggerOnObjectCreate', + \Dict::S('Class:TriggerOnObjectDelete') => 'TriggerOnObjectDelete', + \Dict::S('Class:TriggerOnObjectMention') => 'TriggerOnObjectMention', + \Dict::S('Class:TriggerOnObjectUpdate') => 'TriggerOnObjectUpdate', + \Dict::S('Class:TriggerOnPortalUpdate') => 'TriggerOnPortalUpdate', + \Dict::S('Class:TriggerOnStateEnter') => 'TriggerOnStateEnter', + \Dict::S('Class:TriggerOnStateLeave') => 'TriggerOnStateLeave', + \Dict::S('Class:TriggerOnThresholdReached') => 'TriggerOnThresholdReached', \Dict::S('Class:URP_Profiles') => 'URP_Profiles', \Dict::S('Class:URP_UserOrg') => 'URP_UserOrg', + \Dict::S('Class:UserExternal') => 'UserExternal', + \Dict::S('Class:UserLDAP') => 'UserLDAP', + \Dict::S('Class:UserLocal') => 'UserLocal', ], ]); }