Test is erroring with
dataLayerHelper
generateProductLinesDataLayer
extends the datalayer:
ReferenceError: empty is not defined
at Object.generateProductLinesDataLayer (cartridges\gtm\int_gtm_sfra_custom\cartridge\scripts\gtm\dataLayerHelper.js:42:9)
at Context.<anonymous> (cartridges\test\unit\gtm\int_gtm_sfra_custom\scripts\dataLayerHelper.js:59:42)
at processImmediate (internal/timers.js:464:21)
at process.callbackTrampoline (internal/async_hooks.js:131:17)
Here:
if (!empty(pli.product) && pli.product.isVariant()) {
pid = pli.product.masterProduct.ID;
variant = pli.productID;
}
Why would I get an error when testing a method that uses a built in empty() method that doesn't require any other reference?
Test:
describe("generateProductLinesDataLayer", function () {
it.only(" extends the datalayer", function () {
var result = dataLayerHelper.generateProductLinesDataLayer(productLineItems);
assert.deepEqual(result, []);
});
});
function generateProductLinesDataLayer(productLineItems) {
......
if (!empty(pli.product) && pli.product.isVariant()) {
pid = pli.product.masterProduct.ID;
variant = pli.productID;
}
......
}