From 09067dd816610093e1ec8f83d60c1ebea338b070 Mon Sep 17 00:00:00 2001 From: Sven Reichel Date: Wed, 1 Jan 2025 15:46:41 +0100 Subject: [PATCH 1/5] fixes #4437 --- .../Catalog/Model/Resource/Eav/Attribute.php | 6 +- .../Model/Resource/Eav/AttributeTest.php | 64 +++++++++++++++++++ 2 files changed, 68 insertions(+), 2 deletions(-) create mode 100644 tests/unit/Mage/Catalog/Model/Resource/Eav/AttributeTest.php diff --git a/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php b/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php index 76592f3769f..226fff676b4 100644 --- a/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php +++ b/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php @@ -215,7 +215,7 @@ public function isScopeStore() /** * Retrieve store id * - * @return int + * @return int|null */ public function getStoreId() { @@ -223,7 +223,9 @@ public function getStoreId() if ($dataObject) { return $dataObject->getStoreId(); } - return (int) $this->getData('store_id'); + + $storeId = $this->getData('store_id'); + return is_null($storeId) ? null : (int) $storeId; } /** diff --git a/tests/unit/Mage/Catalog/Model/Resource/Eav/AttributeTest.php b/tests/unit/Mage/Catalog/Model/Resource/Eav/AttributeTest.php new file mode 100644 index 00000000000..2b0a588e64a --- /dev/null +++ b/tests/unit/Mage/Catalog/Model/Resource/Eav/AttributeTest.php @@ -0,0 +1,64 @@ +subject = Mage::getModel('catalog/resource_eav_attribute'); + } + + /** + * @dataProvider provideGetStoreId + * @group Mage_Catalog + * @group Mage_Catalog_Model + * @group Mage_Catalog_Model_Resource + */ + public function testGetStoreId($expectedResult, $withStoreId): void + { + if ($withStoreId) { + $this->subject->setStoreId($withStoreId); + } + $this->assertSame($expectedResult, $this->subject->getStoreId()); + } + + public function provideGetStoreId(): Generator + { + yield 'string' => [ + 1, + '1', + ]; + yield 'int' => [ + 1, + 1, + ]; + yield 'no store id' => [ + null, + null, + ]; + } +} From acc070d3c693f6fe507eac74c5f9ae2cb9b1f5fd Mon Sep 17 00:00:00 2001 From: Sven Reichel Date: Wed, 1 Jan 2025 16:13:53 +0100 Subject: [PATCH 2/5] php-cs --- .phpcs.dist.xml | 4 +++- app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/.phpcs.dist.xml b/.phpcs.dist.xml index 615f2fd5c55..554062ecf1f 100644 --- a/.phpcs.dist.xml +++ b/.phpcs.dist.xml @@ -145,7 +145,9 @@ - + + + */Varien/Object.php* */Varien/Data/Form/Abstract.php* diff --git a/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php b/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php index 226fff676b4..52d8e28e6d7 100644 --- a/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php +++ b/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php @@ -10,7 +10,7 @@ * @category Mage * @package Mage_Catalog * @copyright Copyright (c) 2006-2020 Magento, Inc. (https://www.magento.com) - * @copyright Copyright (c) 2019-2024 The OpenMage Contributors (https://www.openmage.org) + * @copyright Copyright (c) 2019-2025 The OpenMage Contributors (https://www.openmage.org) * @license https://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) */ From 566b1bf206d252fb78b61c415582dde5e49f6b12 Mon Sep 17 00:00:00 2001 From: Sven Reichel Date: Wed, 1 Jan 2025 16:47:11 +0100 Subject: [PATCH 3/5] changed tests --- tests/unit/Mage/Core/Helper/DataTest.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/unit/Mage/Core/Helper/DataTest.php b/tests/unit/Mage/Core/Helper/DataTest.php index 34818865722..f6971a6dfef 100644 --- a/tests/unit/Mage/Core/Helper/DataTest.php +++ b/tests/unit/Mage/Core/Helper/DataTest.php @@ -93,9 +93,9 @@ public function testFormatTimezoneDate( public function provideFormatTimezoneDate(): Generator { $date = date_create()->getTimestamp(); - $dateShort = date('m/j/Y', $date); + $dateShort = date('n/j/Y', $date); $dateLong = date('F j, Y', $date); - $dateShortTime = date('m/j/Y g:i A', $date); + $dateShortTime = date('n/j/Y g:i A', $date); yield 'null' => [ $dateShort, From a5461fa65a931ca894485ed2dba0ae44dbec5549 Mon Sep 17 00:00:00 2001 From: Sven Reichel Date: Wed, 1 Jan 2025 18:37:22 +0100 Subject: [PATCH 4/5] reverted unrelated changes --- .phpcs.dist.xml | 4 +--- tests/unit/Mage/Core/Helper/DataTest.php | 4 ++-- 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/.phpcs.dist.xml b/.phpcs.dist.xml index 554062ecf1f..615f2fd5c55 100644 --- a/.phpcs.dist.xml +++ b/.phpcs.dist.xml @@ -145,9 +145,7 @@ - - - + */Varien/Object.php* */Varien/Data/Form/Abstract.php* diff --git a/tests/unit/Mage/Core/Helper/DataTest.php b/tests/unit/Mage/Core/Helper/DataTest.php index f6971a6dfef..34818865722 100644 --- a/tests/unit/Mage/Core/Helper/DataTest.php +++ b/tests/unit/Mage/Core/Helper/DataTest.php @@ -93,9 +93,9 @@ public function testFormatTimezoneDate( public function provideFormatTimezoneDate(): Generator { $date = date_create()->getTimestamp(); - $dateShort = date('n/j/Y', $date); + $dateShort = date('m/j/Y', $date); $dateLong = date('F j, Y', $date); - $dateShortTime = date('n/j/Y g:i A', $date); + $dateShortTime = date('m/j/Y g:i A', $date); yield 'null' => [ $dateShort, From 97727acdda71cd85f9fb34477af68c9ad9e272ca Mon Sep 17 00:00:00 2001 From: Sven Reichel Date: Thu, 2 Jan 2025 00:20:18 +0100 Subject: [PATCH 5/5] minor improvement --- app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php b/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php index 52d8e28e6d7..4ac2d25ec69 100644 --- a/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php +++ b/app/code/core/Mage/Catalog/Model/Resource/Eav/Attribute.php @@ -224,7 +224,7 @@ public function getStoreId() return $dataObject->getStoreId(); } - $storeId = $this->getData('store_id'); + $storeId = $this->getDataByKey('store_id'); return is_null($storeId) ? null : (int) $storeId; }