Skip to content

Commit 08e1562

Browse files
committed
Use version_compare to compare version strings correctly
1 parent 8fd89cf commit 08e1562

File tree

2 files changed

+10
-10
lines changed

2 files changed

+10
-10
lines changed

lib/internal/Magento/Framework/Module/Plugin/DbStatusValidator.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ private function getGroupedDbVersionErrors()
121121
(array)$allDbVersionErrors,
122122
function ($carry, $item) {
123123
if ($item[DbVersionInfo::KEY_CURRENT] === 'none'
124-
|| $item[DbVersionInfo::KEY_CURRENT] < $item[DbVersionInfo::KEY_REQUIRED]
124+
|| version_compare($item[DbVersionInfo::KEY_CURRENT], $item[DbVersionInfo::KEY_REQUIRED], '<')
125125
) {
126126
$carry['version_too_low'][] = $item;
127127
} else {

lib/internal/Magento/Framework/Test/Unit/Module/Plugin/DbStatusValidatorTest.php

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -157,29 +157,29 @@ public static function beforeDispatchOutOfDateWithErrorsDataProvider()
157157
[
158158
DbVersionInfo::KEY_MODULE => 'Magento_Module4',
159159
DbVersionInfo::KEY_TYPE => 'data',
160-
DbVersionInfo::KEY_CURRENT => '1.0.1',
161-
DbVersionInfo::KEY_REQUIRED => '1.0.0'
160+
DbVersionInfo::KEY_CURRENT => '1.0.10',
161+
DbVersionInfo::KEY_REQUIRED => '1.0.9'
162162
],
163163
],
164164
'expectedMessage' => "Please update your modules: "
165165
. "Run \"composer install\" from the Magento root directory.\n"
166166
. "The following modules are outdated:\n"
167167
. "Magento_Module3 schema: code version - 1.0.0, database version - 2.0.0\n"
168-
. "Magento_Module4 data: code version - 1.0.0, database version - 1.0.1",
168+
. "Magento_Module4 data: code version - 1.0.9, database version - 1.0.10",
169169
],
170170
'some versions too high, some too low' => [
171171
'errors' => [
172172
[
173-
DbVersionInfo::KEY_MODULE => 'Magento_Module1',
173+
DbVersionInfo::KEY_MODULE => 'Magento_Module2',
174174
DbVersionInfo::KEY_TYPE => 'schema',
175-
DbVersionInfo::KEY_CURRENT => '2.0.0',
176-
DbVersionInfo::KEY_REQUIRED => '1.0.0'
175+
DbVersionInfo::KEY_CURRENT => '1.9.0',
176+
DbVersionInfo::KEY_REQUIRED => '1.12.0'
177177
],
178178
[
179-
DbVersionInfo::KEY_MODULE => 'Magento_Module2',
179+
DbVersionInfo::KEY_MODULE => 'Magento_Module1',
180180
DbVersionInfo::KEY_TYPE => 'schema',
181-
DbVersionInfo::KEY_CURRENT => '1.0.0',
182-
DbVersionInfo::KEY_REQUIRED => '2.0.0'
181+
DbVersionInfo::KEY_CURRENT => '2.0.0',
182+
DbVersionInfo::KEY_REQUIRED => '1.0.0'
183183
],
184184
],
185185
'expectedMessage' => "Please update your modules: "

0 commit comments

Comments
 (0)