Skip to content

Commit 2cee5ae

Browse files
committed
Fix integration tests
1 parent 8deec02 commit 2cee5ae

File tree

8 files changed

+15
-10
lines changed

8 files changed

+15
-10
lines changed

DataLayer/Mapper/CartItemDataMapper.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ private function getPriceDiscount(CartItem $cartItem, float $price): float
120120
private function parseDataLayerMapping(CartItem $cartItem, array $data): array
121121
{
122122
if (empty($this->dataLayerMapping)) {
123-
return [];
123+
return $data;
124124
}
125125

126126
foreach ($this->dataLayerMapping as $tagName => $tagValue) {

DataLayer/Mapper/CategoryDataMapper.php

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ public function mapByCategory(CategoryInterface $category): array
4040
$categoryData = [];
4141
$categoryFields = $this->getCategoryFields();
4242
foreach ($categoryFields as $categoryAttributeCode) {
43-
$dataLayerKey = $prefix . $categoryAttributeCode;
4443
$attributeValue = $this->getAttributeValue->getCategoryAttributeValue($category, $categoryAttributeCode);
4544
if (empty($attributeValue)) {
4645
continue;
4746
}
4847

48+
$dataLayerKey = $prefix . $categoryAttributeCode;
4949
$categoryData[$dataLayerKey] = $attributeValue;
5050
}
5151

@@ -59,7 +59,7 @@ public function mapByCategory(CategoryInterface $category): array
5959
*/
6060
private function getCategoryFields(): array
6161
{
62-
return array_filter(array_merge(['id', 'name'], $this->config->getCategoryEavAttributeCodes()));
62+
return array_unique(array_merge(['id', 'name'], $this->config->getCategoryEavAttributeCodes()));
6363
}
6464

6565
/**
@@ -71,7 +71,7 @@ private function getCategoryFields(): array
7171
private function parseDataLayerMapping(CategoryInterface $category, array $data): array
7272
{
7373
if (empty($this->dataLayerMapping)) {
74-
return [];
74+
return $data;
7575
}
7676

7777
foreach ($this->dataLayerMapping as $tagName => $tagValue) {

DataLayer/Mapper/CustomerDataMapper.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ private function getCustomerFields(): array
7575
private function parseDataLayerMapping(CustomerInterface $customer, array $data): array
7676
{
7777
if (empty($this->dataLayerMapping)) {
78-
return [];
78+
return $data;
7979
}
8080

8181
foreach ($this->dataLayerMapping as $tagName => $tagValue) {

DataLayer/Mapper/OrderDataMapper.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ protected function getPaymentType(OrderInterface $order): string
124124
private function parseDataLayerMapping(OrderInterface $order, array $data): array
125125
{
126126
if (empty($this->dataLayerMapping)) {
127-
return [];
127+
return $data;
128128
}
129129

130130
foreach ($this->dataLayerMapping as $tagName => $tagValue) {

DataLayer/Mapper/OrderItemDataMapper.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ private function getPrice(OrderItemInterface $orderItem): float
116116
private function parseDataLayerMapping(OrderItemInterface $orderItem, array $data): array
117117
{
118118
if (empty($this->dataLayerMapping)) {
119-
return [];
119+
return $data;
120120
}
121121

122122
foreach ($this->dataLayerMapping as $tagName => $tagValue) {

DataLayer/Tag/Category/CurrentCategory.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22

33
namespace Yireo\GoogleTagManager2\DataLayer\Tag\Category;
44

5+
use Magento\Framework\Exception\LocalizedException;
56
use Magento\Framework\Exception\NoSuchEntityException;
67
use Yireo\GoogleTagManager2\DataLayer\Mapper\CategoryDataMapper;
78
use Yireo\GoogleTagManager2\Api\Data\MergeTagInterface;
@@ -27,6 +28,7 @@ public function __construct(
2728
/**
2829
* @return string[]
2930
* @throws NoSuchEntityException
31+
* @throws LocalizedException
3032
*/
3133
public function merge(): array
3234
{

Test/Integration/DataLayer/Event/ViewCartTest.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ public function testValidViewCartEvent()
5555
$this->assertEquals('USD', $data['ecommerce']['currency']);
5656
$this->assertNotEquals(0.0, $data['ecommerce']['value']);
5757
$this->assertNotEmpty($data['ecommerce']['items'], 'No ecommerce items found');
58-
$this->assertEquals(1, (int)$data['ecommerce']['items'][0]['quantity']);
58+
$this->assertArrayHasKey('quantity', $data['ecommerce']['items'][0], json_encode($data));
59+
$this->assertEquals(1, (int)$data['ecommerce']['items'][0]['quantity'], json_encode($data));
5960
}
6061
}

Test/Integration/DataLayer/Mapper/CategoryDataMapperTest.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@ public function testMapByCategory()
2424
$category = $this->getCategoryByName('Category 999');
2525
$categoryDataMapper = ObjectManager::getInstance()->get(CategoryDataMapper::class);
2626
$categoryData = $categoryDataMapper->mapByCategory($category);
27-
$this->assertEquals('Category 999', $categoryData['category_name']);
28-
$this->assertEquals($category->getId(), $categoryData['category_id']);
27+
$this->assertArrayHasKey('category_name', $categoryData, json_encode($categoryData));
28+
$this->assertEquals('Category 999', $categoryData['category_name'], json_encode($categoryData));
29+
$this->assertArrayHasKey('category_id', $categoryData, json_encode($categoryData));
30+
$this->assertEquals($category->getId(), $categoryData['category_id'], json_encode($categoryData));
2931
}
3032
}

0 commit comments

Comments
 (0)