From b3e6049c96a607087ec1c9de14e0cc79b280ac71 Mon Sep 17 00:00:00 2001 From: Kaushik Chavda Date: Thu, 12 Dec 2019 10:56:45 +0100 Subject: [PATCH 1/4] #25591 & character in SKUs is shown as & in current variations list on configurable products - Fixed the issue SKU special character which change to encoded version. --- .../adminhtml/web/js/components/dynamic-rows-configurable.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.js b/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.js index 7b04bebd4d73a..4624f07323d59 100644 --- a/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.js +++ b/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.js @@ -219,7 +219,7 @@ define([ _.each(tmpData, function (row, index) { path = this.dataScope + '.' + this.index + '.' + (this.startIndex + index); row.attributes = $('').text(row.attributes).html(); - row.sku = $('').text(row.sku).html(); + row.sku = row.sku; this.source.set(path, row); }, this); @@ -405,7 +405,7 @@ define([ 'id': row.productId, 'product_link': row.productUrl, 'name': $('').text(row.name).html(), - 'sku': $('').text(row.sku).html(), + 'sku': row.sku, 'status': row.status, 'price': row.price, 'price_currency': row.priceCurrency, From 198d216d2190b804dcec5dde1d22c29dc824efb4 Mon Sep 17 00:00:00 2001 From: Nazar Klovanych Date: Wed, 5 Feb 2020 15:39:17 +0200 Subject: [PATCH 2/4] cover changes with jasmine test --- .../dynamic-rows-configurable.test.js | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js diff --git a/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js b/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js new file mode 100644 index 0000000000000..25d49af9b1bc7 --- /dev/null +++ b/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js @@ -0,0 +1,53 @@ +/** + * Copyright © Magento, Inc. All rights reserved. + * See COPYING.txt for license details. + */ + +/* eslint-disable max-nested-callbacks */ +define([ + 'jquery', + 'Magento_ConfigurableProduct/js/components/dynamic-rows-configurable', + 'Magento_Ui/js/dynamic-rows/dynamic-rows' +], function ($, DynamicRowsConf, DynamicRows) { + 'use strict'; + + describe('Magento_ConfigurableProduct/js/components/dynamic-rows-configurable', function () { + var model; + + beforeEach(function () { + model = new DynamicRowsConf(new DynamicRows({ + isEmpty: jasmine.createSpy().and.returnValue(1), + isShowAddProductButton: jasmine.createSpy().and.returnValue(1) + })); + + }); + + it('Verify processingUnionInsertDat method', function () { + var expectedData = [], + mockData = [ + { + attributes: 'Color: dsfsd', + sku: 'Conf-sdfs' + }, + { + attributes: 'Color: sdfs', + sku: 'Conf-dsfsd' + } + ], + sourceMock = { + get: jasmine.createSpy().and.returnValue(['code1', 'code2']), + set: jasmine.createSpy().and.callFake(function (path, row) { + expectedData.push(row); + }) + }; + + model.getChildItems = jasmine.createSpy().and.returnValue($('')); + model.source = sourceMock; + model.processingUnionInsertData(mockData); + expect(model.source.get).toHaveBeenCalled(); + expect(model.getChildItems).toHaveBeenCalled(); + expect(expectedData[1].sku).toBe(mockData[0].sku); + }); + + }); +}); From d2c8006d935011a3d41cf86937967faca3f7e41f Mon Sep 17 00:00:00 2001 From: Nazar Klovanych Date: Wed, 5 Feb 2020 16:22:10 +0200 Subject: [PATCH 3/4] add "&" to test case --- .../web/js/components/dynamic-rows-configurable.test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js b/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js index 25d49af9b1bc7..4e843dc4c888d 100644 --- a/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js +++ b/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js @@ -27,7 +27,7 @@ define([ mockData = [ { attributes: 'Color: dsfsd', - sku: 'Conf-sdfs' + sku: 'Conf&-sdfs' }, { attributes: 'Color: sdfs', From 861f4922e0a45d0ab4cf52895043a92019bc09b4 Mon Sep 17 00:00:00 2001 From: Nazar Klovanych Date: Wed, 5 Feb 2020 16:33:13 +0200 Subject: [PATCH 4/4] small improvements --- .../web/js/components/dynamic-rows-configurable.test.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js b/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js index 4e843dc4c888d..546392d35fe84 100644 --- a/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js +++ b/dev/tests/js/jasmine/tests/app/code/Magento/ConfigurableProduct/view/adminhtml/web/js/components/dynamic-rows-configurable.test.js @@ -46,7 +46,7 @@ define([ model.processingUnionInsertData(mockData); expect(model.source.get).toHaveBeenCalled(); expect(model.getChildItems).toHaveBeenCalled(); - expect(expectedData[1].sku).toBe(mockData[0].sku); + expect(expectedData[1].sku).toBe('Conf&-sdfs'); }); });