Skip to content

Commit 33bda6c

Browse files
MC-4277: Address Product Page slowness due to 'product_data_storage' handling
- fix tests
1 parent 290f33e commit 33bda6c

File tree

2 files changed

+10
-14
lines changed

2 files changed

+10
-14
lines changed

dev/tests/js/jasmine/tests/app/code/Magento/Catalog/frontend/js/product/storage/data-storage.test.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,6 +49,7 @@ define([
4949
injector.clean();
5050
injector.remove();
5151
} catch (e) {}
52+
window.localStorage.clear();
5253
});
5354

5455
describe('Magento_Catalog/js/product/storage/data-storage', function () {
@@ -88,18 +89,20 @@ define([
8889
};
8990
});
9091

92+
afterEach(function () {
93+
window.localStorage.clear();
94+
});
95+
9196
it('check calls "dataHandler" method with data', function () {
9297
var data = {
9398
property: 'value'
9499
};
95100

96101
obj.dataHandler(data);
97-
expect(obj.localStorage.set).toHaveBeenCalledWith(data);
98-
expect(obj.localStorage.removeAll).not.toHaveBeenCalled();
102+
expect(window.localStorage.getItem(obj.namespace)).toBe(JSON.stringify(data));
99103
});
100104
it('check calls "dataHandler" method with empty data', function () {
101105
obj.dataHandler({});
102-
expect(obj.localStorage.set).not.toHaveBeenCalled();
103106
expect(obj.localStorage.removeAll).toHaveBeenCalled();
104107
});
105108
});

dev/tests/js/jasmine/tests/app/code/Magento/Catalog/frontend/js/product/storage/ids-storage.test.js

Lines changed: 4 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ define([
2727
injector.clean();
2828
injector.remove();
2929
} catch (e) {}
30+
window.localStorage.clear();
3031
});
3132

3233
describe('Magento_Catalog/js/product/storage/ids-storage', function () {
@@ -40,13 +41,6 @@ define([
4041
expect(obj.localStorage.get).toHaveBeenCalled();
4142
});
4243
});
43-
describe('"cachesDataFromLocalStorage" method', function () {
44-
it('check calls localStorage get method', function () {
45-
obj.getDataFromLocalStorage = jasmine.createSpy().and.returnValue({});
46-
47-
expect(obj.localStorage.get).toHaveBeenCalled();
48-
});
49-
});
5044
describe('"initLocalStorage" method', function () {
5145
it('check returned value', function () {
5246
obj.namespace = 'test';
@@ -80,17 +74,16 @@ define([
8074
it('check calls with data that equal with data in localStorage', function () {
8175
obj.internalDataHandler(data);
8276

83-
expect(obj.localStorage.get).toHaveBeenCalled();
84-
expect(obj.localStorage.set).not.toHaveBeenCalled();
77+
expect(window.localStorage.getItem(obj.namespace)).toBe(JSON.stringify(data));
8578
});
8679

8780
it('check calls with data that not equal with data in localStorage', function () {
8881
var emptyData = {};
8982

83+
obj.internalDataHandler(data);
9084
obj.internalDataHandler(emptyData);
9185

92-
expect(obj.localStorage.get).toHaveBeenCalled();
93-
expect(obj.localStorage.set).toHaveBeenCalledWith(emptyData);
86+
expect(window.localStorage.getItem(obj.namespace)).toBe(JSON.stringify(emptyData));
9487
});
9588
});
9689
describe('"externalDataHandler" method', function () {

0 commit comments

Comments
 (0)