diff options
author | Ben Hayden <hayden767@gmail.com> | 2022-03-11 11:47:56 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-03-11 11:47:56 +0300 |
commit | 6ca37dfc23ba7f98ac4060369c230f05e4e8d651 (patch) | |
tree | c1a0df61b3c1379f117b4ca3e1fddd0e51d6cad1 /tests | |
parent | 62ee7b12769d787c9f46d5bece8d3a8f2f381a1f (diff) |
Fix PHP8 Trim Error (#18903)
* Fix PHP8 Trim Error
An error happens if sites if names or skus are arrays in PHP 8
> Uncaught exception in core/Tracker/GoalManager.php line 567:
> trim(): Argument #1 ($string) must be of type string, array given
* Add unit test for PHP8 trim fix
Diffstat (limited to 'tests')
-rw-r--r-- | tests/PHPUnit/System/TrackerTest.php | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/PHPUnit/System/TrackerTest.php b/tests/PHPUnit/System/TrackerTest.php index e00d78aa7a..1eb3650e4f 100644 --- a/tests/PHPUnit/System/TrackerTest.php +++ b/tests/PHPUnit/System/TrackerTest.php @@ -123,6 +123,26 @@ class TrackerTest extends IntegrationTestCase $this->assertActionEquals('scary <> movies', $conversionItems[0]['idaction_category']); } + public function test_trackingEcommerceOrder_WithNameAndSKUArrays() + { + // item sku, item name, item category, item price, item quantity + $ecItems = array(array(["sku1", "sku2"], ["name1", "name2"], 'category1', 12.99, 1)); + + $urlToTest = $this->getEcommerceItemsUrl($ecItems); + + $response = $this->sendTrackingRequestByCurl($urlToTest); + Fixture::checkResponse($response); + + $this->assertEquals(1, $this->getCountOfConversions()); + + $conversionItems = $this->getConversionItems(); + $this->assertEquals(1, count($conversionItems)); + + $this->assertActionEquals('sku1,sku2', $conversionItems[0]['idaction_sku']); + $this->assertActionEquals('name1,name2', $conversionItems[0]['idaction_name']); + $this->assertActionEquals('category1', $conversionItems[0]['idaction_category']); + } + public function test_trackingEcommerceOrder_DoesNotFail_WhenEmptyEcommerceItemsParamUsed() { // item sku, item name, item category, item price, item quantity |